我的屏幕上有一个框架布局(见下面的代码)。此布局由2层组成。第一层是LinearLayout,有几个视图,高度= "wrap_content"
。第二个是带有"fill_parent"
的ProgressBar。我需要进度条将其自身拉伸到线性布局的高度,但现在它不考虑线性布局的高度。
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<ProgressBar
android:id="@+id/progress"
android:indeterminateOnly="false"
android:progressDrawable="@drawable/progressbar_drawable"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
<LinearLayout
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/file_item_background">
---
</LinearLayout>
</FrameLayout>
答案 0 :(得分:1)
而不是FrameLayout
,请尝试RelativeLayout
。
然后,您可以在ProgressBar上设置android:layout_alignTop
和android:layout_alignBottom
以匹配LinearLayout的高度,如下所示:
<ProgressBar
android:id="@+id/progress"
android:indeterminateOnly="false"
android:progressDrawable="@drawable/progressbar_drawable"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/my_linear_layout"
android:layout_alignBottom="@+id/my_linear_layout" />
<LinearLayout
android:id="@+id/my_linear_layout"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/file_item_background">
---
</LinearLayout>
另一种选择是手动调整代码中的高度。
通常,如果布局要求要求相对于另一个视图的位置或大小,则要使用RelativeLayout。