【发布时间】:2017-02-05 01:45:57
【问题描述】:
如果我想显示一个需要时间来获取内容的视图,我通常会将其包含在 FrameLayout 中,并在旁边添加一个 ProgressBar。获取时显示进度条,并在内容可用时显示视图。
带有 textView 的示例。
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/selectableItemBackground"
android:clickable="true">
<TextView
android:id="@+id/addressTv"
android:layout_width="match_parent"
android:minLines="4"
android:maxLines="4"
android:layout_height="match_parent"/>
<ProgressBar
android:id="@+id/addressLoadingBar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:indeterminate="true" />
</FrameLayout>
在此示例中,在任何给定时刻仅显示“addressTv”或“addressLoadingBar”之一,另一个为“GONE”。
但我不知道如何使 FrameLayout 具有固定高度。在这种情况下,孩子们的最大身高。使用上面的布局,当我们在孩子之间切换时,它会发生变化。
【问题讨论】:
-
您是否尝试过使用
INVISIBLE而不是GONE。这样它就可以作为最大的布局仍然存在。 -
是的,成功了,谢谢。
标签: android android-layout android-framelayout layoutparams