2013-11-21 39 views
0

我的屏幕上有一個框架佈局(請參閱下面的代碼)。該佈局由2層組成。第一層是具有多個視圖的LinearLayout,其高度= "wrap_content"。第二個是ProgressBar "fill_parent"。我需要進度條將自己拉伸到線性佈局的高度,但現在它不考慮線性佈局的高度。將框架佈局的圖層拉伸到另一圖層

<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> 

回答

1

而不是FrameLayout,請嘗試RelativeLayout

然後,您可以設置android:layout_alignTopandroid: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。