2013-08-20 132 views
-2

我有一個線性佈局,這是一個tablerow的一部分線性佈局,即使大小按鈕

<LinearLayout 
      android:id="@+id/relativeLayout2" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:paddingLeft="4dp" > 

      <Button android:layout_weight="1" android:layout_height="50dp" android:id="@+id/button11" android:background="@drawable/page1p" android:layout_width="0dp"></Button> 
      <Button android:layout_weight="1" android:id="@+id/button21" android:layout_height="50dp" android:background="@drawable/page2x" android:layout_width="0dp"></Button> 
      <Button android:layout_weight="1" android:id="@+id/button31" android:layout_height="50dp" android:layout_width="0dp" android:background="@drawable/page3x"></Button> 
      <Button android:layout_weight="1" android:id="@+id/button41" android:layout_height="50dp" android:layout_width="0dp" android:background="@drawable/page4x"></Button> 
      <Button android:layout_weight="1" android:id="@+id/button51" android:layout_height="50dp" android:layout_width="0dp" android:background="@drawable/page5x"></Button> 
      <Button android:layout_weight="1" android:id="@+id/button61" android:layout_height="50dp" android:layout_width="0dp" android:background="@drawable/page6x"></Button> 
      <Button android:layout_weight="1" android:layout_height="50dp" android:id="@+id/Button71" android:layout_width="0dp" android:background="@drawable/page7x"></Button> 
     </LinearLayout> 

我所試圖做的是有它,這樣無論有多少個按鈕添加到該佈局,他們將始終調整大小以均勻地適應寬度。我試圖改爲imagebuttons,但它沒有幫助。我不想爲每個按鈕創建線性佈局,並且佈局間隔均勻。

編輯:這是你不應該給按鍵寬度0,如果你給它0,那麼layout_weight將無法正常工作了,我使用

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:drawable="@drawable/page6p" 
      android:state_pressed="true" /> 
    <item android:drawable="@drawable/page6" /> 
</selector> 
+0

增加升重量像按鈕一樣。 – Yugesh

+0

我不明白。這段代碼的當前輸出是什麼? – njzk2

+0

你必須在xml上做到這一點?或者你可以通過編程的方式來完成它,只需在運行時放置按鈕,計算屏幕大小,分割大小並平均分配給每個按鈕。希望這可以幫助。 – user2652394

回答

0

首先的圖像的代碼。

嘗試給寬度和按鈕的高度wrap_content

UPDATE,嘗試此

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="vertical" 
android:padding="10dip" > 

<LinearLayout 
    android:id="@+id/relativeLayout2" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:paddingLeft="4dp" > 

    <Button 
     android:id="@+id/button11" 
     android:layout_width="0dp" 
     android:layout_height="50dp" 
     android:layout_weight="1" > 
    </Button> 

    <Button 
     android:id="@+id/button21" 
     android:layout_width="0dp" 
     android:layout_height="50dp" 
     android:layout_weight="1" > 
    </Button> 

    <Button 
     android:id="@+id/button31" 
     android:layout_width="0dp" 
     android:layout_height="50dp" 
     android:layout_weight="1" > 
    </Button> 

    <Button 
     android:id="@+id/button41" 
     android:layout_width="0dp" 
     android:layout_height="50dp" 
     android:layout_weight="1" > 
    </Button> 

    <Button 
     android:id="@+id/button51" 
     android:layout_width="0dp" 
     android:layout_height="50dp" 
     android:layout_weight="1" > 
    </Button> 

    <Button 
     android:id="@+id/button61" 
     android:layout_width="0dp" 
     android:layout_height="50dp" 
     android:layout_weight="1" > 
    </Button> 

    <Button 
     android:id="@+id/Button71" 
     android:layout_width="0dp" 
     android:layout_height="50dp" 
     android:layout_weight="1" > 
    </Button> 
</LinearLayout> 

結果是

enter image description here

+0

wrap_content沒有解決問題,我被告知從多個答案中使用寬度爲0的問題類似於我的問題,但它不適用於我。 – Zaid90

+1

嘗試一下,如果你的寬度被定義爲0,那麼layout_weight將無法工作,因爲它不能使你的按鈕均勻分佈! –

+0

我試過wrap_content的寬度和高度,它沒有解決問題。 – Zaid90