2012-10-27 73 views
2

所以在我的佈局中,我在同一行上有三個按鈕,一個左對齊,中間和右對齊。我也有按鈕下方的TextView作爲標籤,但它們也分別對齊左,中,右。我希望他們能夠集中在按鈕的下面,並且在同一行上,但是我不知道如何在沒有明確設置座標的情況下如何做到這一點,然後在某些手機上打破座標。我嘗試設置各種重量和佈局選項,但它只是我不想要的。有沒有辦法在RelativeLayout中做到這一點?或者也許這是不可能的。最後,我在同一行上有三個TextView,底部有一個按鈕。我想對齊的波紋管所示:提前RelativeLayout以上TextViews居中的三個按鈕

http://imgur.com/vYuqk

感謝。

+0

我很努力去理解你的意思,你能夠畫出你想要的圖片嗎? :) – jimmithy

+0

我很困惑你到底是什麼問題。我明白你想要什麼,但是你可以截取你的UI設計器的截圖,以便我們看到問題所在? – CptJesus

回答

0

您不能將一個元素放在另一個元素的RelativeLayout中間。您可以嘗試使用三個RelativeLayouts(每列一個)的水平LinearLayout。您可以在垂直LinearLayout中包含整個事物以獲取底部按鈕。

TableLayout或GridLayout也是可能的。

0

正如人們所建議的,沒有辦法將View置於的另一個View以下。如果您可以確認寬度不必超過Button寬度,則可以使用此黑客技巧。解決方法是:使TextView的左右邊緣與上面的Button對齊。然後將TextView的重力設置爲center,以便TextView中的文本居中。

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

    <Button 
     android:id="@+id/button1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentTop="true" 
     android:layout_marginTop="130dp" 
     android:text="Button1" /> 

    <Button 
     android:id="@+id/button2" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBaseline="@+id/button1" 
     android:layout_alignBottom="@+id/button1" 
     android:layout_centerHorizontal="true" 
     android:text="Button2" /> 

    <Button 
     android:id="@+id/button3" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBaseline="@+id/button2" 
     android:layout_alignBottom="@+id/button2" 
     android:layout_alignParentRight="true" 
     android:text="Button3" /> 

    <TextView 
     android:id="@+id/textView1" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_alignLeft="@id/button1" 
     android:layout_alignRight="@id/button1" 
     android:layout_below="@+id/button1" 
     android:layout_marginTop="50dp" 
     android:gravity="center" 
     android:text="Txt1" /> 

    <TextView 
     android:id="@+id/textView2" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_alignLeft="@id/button2" 
     android:layout_alignRight="@id/button2" 
     android:layout_below="@+id/button2" 
     android:layout_marginTop="50dp" 
     android:gravity="center" 
     android:text="Txt2" /> 

    <TextView 
     android:id="@+id/textView3" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_alignLeft="@id/button3" 
     android:layout_alignRight="@id/button3" 
     android:layout_below="@+id/button3" 
     android:layout_marginTop="50dp" 
     android:gravity="center" 
     android:text="Txt3" /> 

</RelativeLayout>