2013-08-04 86 views
0

如何設計佈局,使其佔據相對佈局的底部空間的中心。如何將中心置於相對佈局的底部空間?

|--------------------------| 
|       | 
|       | 
|       | 
|       | 
|       | 
|--------------------------| 
|   |    | 
|  this will be  | 
|  content   | 
|   |    | 
|   |    | 
|--------------------------| 

<RelativeLayout>[another_layout should be here]</RelativeLayout> 

所以another_layout將從RelativeLayout的中間開始,填補了該佈局的底部。

回答

4

你可以將你的內容封裝在一個線性佈局中,這將在你的相對佈局中,然後設置android:layout_alignParentBottom =「true」。

+0

其實layout_alignParentBottom不會工作。可能是我的佈局圖片讓你困惑。我的佈局結構是這樣的 [此處的內容.....] jquery404

+0

這是否意味着您希望您的內容位於屏幕中間的某個位置? – Aditya

+0

是的,說我想要一個LinearLayout。它將從屏幕中間開始,其高度將爲屏幕高度的一半。 – jquery404

2
<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" > 

    <!-- Invisible View that will hold the position --> 
    <View 
     android:id="@+id/stub" 
     android:layout_width="0dp" 
     android:layout_height="0dp" 
     android:layout_centerInParent="true"/> 

    <!-- Content below --> 
    <TextView 
     android:layout_below="@id/stub" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerHorizontal="true" 
     android:text="@string/something" /> 

</RelativeLayout> 
0

RelativeLayout是您的頂級元素嗎?如果是這樣,那麼爲什麼不使用帶有layout_weight參數的LinearLayout,然後將其作爲RelativeLayout?這似乎比在你已經集中的觀點下黑客更合乎邏輯。佈局看起來像這樣。

<LinearLayout 
    xmlns:android="stuff" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical"> 
    <RelativeLayout 
     android:layout_height="0dp" 
     android:layout_width="match_parent" 
     android:layout_weight="1"> 
     <!-- All the stuff that would have been above the center before --> 
    </RelativeLayout> 
    <RelativeLayout 
     android:layout_height="0dp" 
     android:layout_width="match_parent" 
     android:layout_weight="1"> 
     <!-- All the stuff that would have been below the center before --> 
    </RelativeLayout> 

IMO這是一個清晰的解決方案

相關問題