【发布时间】:2016-12-18 21:00:25
【问题描述】:
我正面临一个我正在努力解决的问题。
我的布局 2 小部件中有。一个 ImageView 和一个 ProgressBar(不确定)。
我想在 ImageView 图像加载之前显示进度条。
问题是 ImageView 填充了所有区域,而 Progressbar 具有特定的大小。当我将进度条可见性设置为 INVISIBLE 或 GONE 时,进度条不再出现,但她的大小仍会填充某些区域,这使得 Imageview 无法填充所有区域。
如何设置进度条不可见并将ImageView放在最上面?
布局
<LinearLayout
android:id="@+id/linear_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/bck_card_layout"
android:orientation="vertical"
android:padding="2dp"
android:weightSum="1">
<TextView
android:id="@+id/title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:drawableEnd="@drawable/ic_medal"
android:drawablePadding="12dp"
android:fontFamily="sans-serif-light"
android:paddingBottom="8dp"
android:paddingEnd="12dp"
android:paddingStart="12dp"
android:paddingTop="8dp"
android:singleLine="true"
android:textColor="@color/textPrimary"
android:textSize="@dimen/text_regular" />
<View
android:layout_width="match_parent"
android:layout_height="2dp"
android:background="@color/colorAccent" />
<ProgressBar
android:id="@+id/card_progressbar"
android:visibility="visible"
android:layout_gravity="center_horizontal|center_vertical"
android:layout_width="30dp"
android:layout_height="30dp"
android:indeterminate="true" />
<ImageView
android:id="@+id/image"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:scaleType="centerCrop" />
<View
android:layout_width="match_parent"
android:layout_height="2dp"
android:background="@color/colorAccent" />
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingEnd="12dp"
android:paddingStart="12dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="start|center_vertical"
android:fontFamily="sans-serif-light"
android:paddingBottom="6dp"
android:paddingTop="6dp"
android:text="@string/lunch_per_kilo"
android:textColor="@color/textPrimary"
android:textSize="@dimen/text_regular" />
<TextView
android:id="@+id/price"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end|center_vertical"
android:ellipsize="start"
android:paddingStart="116dp"
android:singleLine="true"
android:textColor="@color/textSecondary"
android:textSize="@dimen/text_xlarge"
android:textStyle="bold" />
</FrameLayout>
<View
android:layout_width="match_parent"
android:layout_height="2dp"
android:background="@color/colorAccent" />
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingEnd="12dp"
android:paddingStart="12dp">
<TextView
android:id="@+id/valid_until"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="start|center_vertical"
android:drawablePadding="8dp"
android:drawableStart="@drawable/ic_flash"
android:fontFamily="sans-serif-light"
android:gravity="center_vertical"
android:includeFontPadding="false"
android:paddingBottom="8dp"
android:paddingTop="8dp"
android:textColor="@color/textPrimary"
android:textSize="@dimen/text_small"
android:textStyle="italic" />
<TextView
android:id="@+id/like_counter"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end|center_vertical"
android:drawablePadding="8dp"
android:drawableStart="@drawable/ic_heart_24dp"
android:fontFamily="sans-serif-thin"
android:singleLine="true"
android:textColor="@color/textSecondary"
android:textSize="@dimen/text_regular" />
</FrameLayout>
</LinearLayout>
【问题讨论】: