2011-07-09 32 views
0

看看草圖的佈局。用什麼容器來獲得這樣的佈局?

我需要有位於屏幕的中間5個按鈕和安排這樣的。我應該使用什麼樣的容器元素 - TableLayoutRelativeLayout或某些第三種佈局?

+0

如果是這樣的功課,記住使用作業標誌。 –

+0

那麼,不,只是更復雜的佈局的一部分:)) – sandalone

回答

2

在這種情況下,我會用這樣的

<LinearLayout android:orientation="vertical" ....> 
    <RelativeLayout ... > 
     // place the buttons in the desired padding 
    </RelativeLayout> 
    <RelativeLayout ... > 
     <Button ... android:layout_centerHorizontal="true" ... /> 
    </RelativeLayout> 
    <RelativeLayout ... > 
     // place the buttons in the desired padding 
    </RelativeLayout> 
</LinearLayout> 
+0

這看起來不錯。明天將嘗試第一件事。 – sandalone

0

我建議使用相對possition elemnts(或絕對取決於它是否在一個容器或沒有)

2

您可以使用相對佈局,

第1步:創建您的第一個按鈕,然後創建第二個按鈕使所述第二按鈕leftof到第一按鈕

第二步:創建下面的第一個按鈕的第三個按鈕

步驟3:創建下面的第三個按鈕,第四和第五鍵

0

由於看起來你總是希望它們像你顯示的行一樣,但不希望它們在列中,所以我不會去看TableLayout。 RelativeLayout很好。

或者,像這樣組合佈局如何?我剛掀起這件事(見android:gravity屬性,看看它是如何工作):

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" android:gravity="center_vertical"> 
    <LinearLayout android:id="@+id/linearLayout1" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_horizontal"> 
     <Button android:text="Button" android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button> 
     <Button android:text="Button" android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button> 
    </LinearLayout> 
    <LinearLayout android:id="@+id/linearLayout2" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_horizontal"> 
     <Button android:text="Button" android:id="@+id/button3" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button> 
    </LinearLayout> 
    <LinearLayout android:id="@+id/linearLayout3" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_horizontal"> 
     <Button android:text="Button" android:id="@+id/button4" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button> 
     <Button android:text="Button" android:id="@+id/button5" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button> 
    </LinearLayout> 

</LinearLayout> 
+0

按鈕之間的空間呢?這樣他們會觸及對方,對嗎?! – sandalone

+1

你想要多少空間?你沒有在你的問題中說過。 :P如果您在Eclipse中按原樣查看該佈局,則應該看到它們在外觀上不會觸摸,但它們可以觸及的矩形的確如此。如果您希望它們之間有更多空間,請根據您的需要在每個按鈕或每個子佈局上指定邊距。請記住使用dp單位而不是px。 :) – Ribose

相關問題