2013-08-18 117 views
1

有誰知道爲什麼發生這種情況:佈局在更大尺寸屏幕的間距問題

框不會在平板電腦屏幕是10" 正確對齊,字母,但它適用於7" 就好和4.7" 屏幕。

enter image description here

這裏是我的XML佈局:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     android:orientation="vertical" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:layout_weight="1" 
     android:padding="5dp" 
     android:id="@+id/alphabetPad" > 
     <LinearLayout 
      android:orientation="horizontal" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/rowABCD" 
      android:layout_weight="1"> 

      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnA" 
       android:layout_weight="1" 
       android:text="A" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 
      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnB" 
       android:layout_weight="1" 
       android:text="B" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 

      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="match_parent" 
       android:id="@+id/btnC" 
       android:layout_weight="1" 
       android:text="C" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 

      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="match_parent" 
       android:id="@+id/btnD" 
       android:layout_weight="1" 
       android:text="D" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 
     </LinearLayout> 
     <LinearLayout 
      android:orientation="horizontal" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/rowEFGH" 
      android:layout_weight="1"> 

      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnE" 
       android:layout_weight="1" 
       android:text="E" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 

      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnF" 
       android:layout_weight="1" 
       android:text="F" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 

      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnG" 
       android:layout_weight="1" 
       android:text="G" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 

      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnH" 
       android:layout_weight="1" 
       android:text="H" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 
     </LinearLayout> 

     <LinearLayout 
      android:orientation="horizontal" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:layout_weight="1" 
      android:id="@+id/rowIJKL"> 

      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnI" 
       android:layout_weight="1" 
       android:text="I" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 

      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnJ" 
       android:layout_weight="1" 
       android:text="J" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 

      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnK" 
       android:layout_weight="1" 
       android:text="K" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 
      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnL" 
       android:layout_weight="1" 
       android:text="L" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 
     </LinearLayout> 
     <LinearLayout 
      android:orientation="horizontal" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:layout_weight="1" 
      android:id="@+id/rowMNOP"> 

      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnM" 
       android:layout_weight="1" 
       android:text="M" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 

      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnN" 
       android:layout_weight="1" 
       android:text="N" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 

      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnO" 
       android:layout_weight="1" 
       android:text="O" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 
      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnP" 
       android:layout_weight="1" 
       android:text="P" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 
     </LinearLayout> 
     <LinearLayout 
      android:orientation="horizontal" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:layout_weight="1" 
      android:id="@+id/rowQRST"> 

      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnQ" 
       android:layout_weight="1" 
       android:text="Q" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 

      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnR" 
       android:layout_weight="1" 
       android:text="R" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 

      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnS" 
       android:layout_weight="1" 
       android:text="S" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 
      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnT" 
       android:layout_weight="1" 
       android:text="T" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 
     </LinearLayout> 
     <LinearLayout 
      android:orientation="horizontal" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:layout_weight="1" 
      android:id="@+id/rowUVWX"> 

      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnU" 
       android:layout_weight="1" 
       android:text="U" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 

      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnV" 
       android:layout_weight="1" 
       android:text="V" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 

      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnW" 
       android:layout_weight="1" 
       android:text="W" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 
      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="match_parent" 
       android:id="@+id/btnX" 
       android:layout_weight="1" 
       android:text="X" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 
     </LinearLayout> 
     <LinearLayout 
      android:orientation="horizontal" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:layout_weight="1" 
      android:id="@+id/rowYZ"> 

      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnBlank" 
       android:layout_weight="1" 
       android:text="" 
       android:visibility="invisible" /> 

      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnY" 
       android:layout_weight="1" 
       android:text="Y" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 

      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:id="@+id/btnZ" 
       android:layout_weight="1" 
       android:text="Z" 
       android:background="@drawable/letterstyle" 
       android:textColor="#FFFFFF" 
       android:layout_margin="2dp" 
       android:textSize="@dimen/btn_text" 
       android:textStyle="bold" /> 
      <Button 
       android:layout_width="wrap_content" 
       android:layout_height="match_parent" 
       android:id="@+id/btnBlank" 
       android:layout_weight="1" 
       android:text="" 
       android:visibility="invisible" /> 
     </LinearLayout> 
</LinearLayout> 

我猜箱子太大,以適應我怎樣才能讓這個無論應用程序正在顯示的屏幕大小,框總是排隊。

我試着改變每個按鈕的邊距,1dp用於較大的屏幕,2dp用於較小的屏幕,但沒有幫助。

非常感謝幫助。

回答

3

只需更換

android:layout_width = "wrap_content" 

android:layout_width = "fill_parent" 

嘗試下面佈局:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:layout_weight="1" 
    android:padding="5dp" 
    android:id="@+id/alphabetPad" > 
    <LinearLayout 
     android:orientation="horizontal" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:id="@+id/rowABCD" 
     android:layout_weight="1"> 

     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnA" 
      android:layout_weight="1" 
      android:text="A" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 
     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnB" 
      android:layout_weight="1" 
      android:text="B" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 

     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="match_parent" 
      android:id="@+id/btnC" 
      android:layout_weight="1" 
      android:text="C" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 

     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="match_parent" 
      android:id="@+id/btnD" 
      android:layout_weight="1" 
      android:text="D" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 
    </LinearLayout> 
    <LinearLayout 
     android:orientation="horizontal" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:id="@+id/rowEFGH" 
     android:layout_weight="1"> 

     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnE" 
      android:layout_weight="1" 
      android:text="E" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 

     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnF" 
      android:layout_weight="1" 
      android:text="F" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 

     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnG" 
      android:layout_weight="1" 
      android:text="G" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 

     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnH" 
      android:layout_weight="1" 
      android:text="H" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 
    </LinearLayout> 

    <LinearLayout 
     android:orientation="horizontal" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:layout_weight="1" 
     android:id="@+id/rowIJKL"> 

     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnI" 
      android:layout_weight="1" 
      android:text="I" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 

     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnJ" 
      android:layout_weight="1" 
      android:text="J" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 

     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnK" 
      android:layout_weight="1" 
      android:text="K" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 
     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnL" 
      android:layout_weight="1" 
      android:text="L" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 
    </LinearLayout> 
    <LinearLayout 
     android:orientation="horizontal" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:layout_weight="1" 
     android:id="@+id/rowMNOP"> 

     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnM" 
      android:layout_weight="1" 
      android:text="M" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 

     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnN" 
      android:layout_weight="1" 
      android:text="N" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 

     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnO" 
      android:layout_weight="1" 
      android:text="O" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 
     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnP" 
      android:layout_weight="1" 
      android:text="P" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 
    </LinearLayout> 
    <LinearLayout 
     android:orientation="horizontal" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:layout_weight="1" 
     android:id="@+id/rowQRST"> 

     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnQ" 
      android:layout_weight="1" 
      android:text="Q" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 

     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnR" 
      android:layout_weight="1" 
      android:text="R" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 

     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnS" 
      android:layout_weight="1" 
      android:text="S" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 
     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnT" 
      android:layout_weight="1" 
      android:text="T" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 
    </LinearLayout> 
    <LinearLayout 
     android:orientation="horizontal" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:layout_weight="1" 
     android:id="@+id/rowUVWX"> 

     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnU" 
      android:layout_weight="1" 
      android:text="U" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 

     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnV" 
      android:layout_weight="1" 
      android:text="V" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 

     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnW" 
      android:layout_weight="1" 
      android:text="W" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 
     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="match_parent" 
      android:id="@+id/btnX" 
      android:layout_weight="1" 
      android:text="X" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 
    </LinearLayout> 
    <LinearLayout 
     android:orientation="horizontal" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:layout_weight="1" 
     android:id="@+id/rowYZ"> 

     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnBlank" 
      android:layout_weight="1" 
      android:text="" 
      android:visibility="invisible" /> 

     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnY" 
      android:layout_weight="1" 
      android:text="Y" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 

     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:id="@+id/btnZ" 
      android:layout_weight="1" 
      android:text="Z" 
      android:background="@drawable/letterstyle" 
      android:textColor="#FFFFFF" 
      android:layout_margin="2dp" 
      android:textSize="@dimen/btn_text" 
      android:textStyle="bold" /> 
     <Button 
      android:layout_width="fill_parent" 
      android:layout_height="match_parent" 
      android:id="@+id/btnBlank" 
      android:layout_weight="1" 
      android:text="" 
      android:visibility="invisible" /> 
    </LinearLayout> 

請檢查修改後的佈局我只是張貼在我的答案。我測試時對我來說工作正常。當您在線性佈局中指定layout_weight時,最好使用layout_width或layout_height作爲fill_parent,因爲LinearLayout根據layout_weight屬性調整佈局,而不管佈局中的內容如何。

讓我知道它是否也適合你!

+0

您剛剛寫下「用X替換X」?你確定這是你的意思嗎? –

+0

對不起,我錯了,只是編輯。 – 2013-08-18 11:50:53

+0

謝謝。這個竅門 –

1

您可以使用TableLayout和android:stretchColumns =「*」強制所有列具有完全相同的寬度。

<?xml version="1.0" encoding="utf-8"?> 
<TableLayout 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:layout_weight="1" 
     android:padding="5dp" 
     android:stretchColumns="*" > 

    <TableRow android:layout_weight="1"> 
     <Button android:text="A" 
       android:layout_height="match_parent"/> 
     <Button android:text="B" 
       android:layout_height="match_parent"/> 
     <Button android:text="C" 
       android:layout_height="match_parent"/> 
     <Button android:text="D" 
       android:layout_height="match_parent"/> 
     <Button android:text="E" 
       android:layout_height="match_parent"/> 
    </TableRow> 

    <TableRow android:layout_weight="1"> 
     <Button android:text="F" 
       android:layout_height="match_parent"/> 
     <Button android:text="G" 
       android:layout_height="match_parent"/> 
     <Button android:text="H" 
       android:layout_height="match_parent"/> 
     <Button android:text="I" 
       android:layout_height="match_parent"/> 
     <Button android:text="J" 
       android:layout_height="match_parent"/> 
    </TableRow> 

    <TableRow android:layout_weight="1"> 
     <Button android:text="K" 
       android:layout_height="match_parent"/> 
     <Button android:text="L" 
       android:layout_height="match_parent"/> 
     <Button android:text="M" 
       android:layout_height="match_parent"/> 
     <Button android:text="N" 
       android:layout_height="match_parent"/> 
     <Button android:text="O" 
       android:layout_height="match_parent"/> 
    </TableRow> 

    <TableRow android:layout_weight="1"> 
     <Button android:text="P" 
       android:layout_height="match_parent"/> 
     <Button android:text="Q" 
       android:layout_height="match_parent"/> 
     <Button android:text="R" 
       android:layout_height="match_parent"/> 
     <Button android:text="S" 
       android:layout_height="match_parent"/> 
     <Button android:text="T" 
       android:layout_height="match_parent"/> 
    </TableRow> 


</TableLayout> 

enter image description here

+0

它使E小於A –

+0

有趣。在這種情況下,請查看TableLayout。它允許你指定你想要相等寬度的列。我的答案已更新,以反映這一點。 –

+0

請參閱我添加的示例。 –