2013-05-28 83 views
1

我对齐TableLayout的9复选框。我已经通过android:stretchColumns对齐列,但列之间的空间很高。如何修复这个空间。删除TableLayout列的空间

<TableLayout 
         android:layout_width="wrap_content" 
         android:layout_height="match_parent" 
         android:stretchColumns="1" > 

         <TableRow 
          android:id="@+id/tableRow1" 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" > 

          <CheckBox 
           android:id="@+id/cbRestaurant" 
           android:layout_width="0dp" 
           android:layout_height="wrap_content" 
           android:layout_weight="1" 
           android:text="@string/drawer_select_restaurant" 
           android:textSize="14sp" /> 

          <CheckBox 
           android:id="@+id/cbHotel" 
           android:layout_width="0dp" 
           android:layout_height="wrap_content" 
           android:layout_weight="1" 
           android:text="@string/drawer_select_hotel" 
           android:textSize="14sp" /> 

          <CheckBox 
           android:id="@+id/cbNightLife" 
           android:layout_width="0dp" 
           android:layout_height="wrap_content" 
           android:layout_weight="1" 
           android:text="@string/drawer_select_nightlife" 
           android:textSize="14sp" /> 
         </TableRow> 

         <TableRow 
          android:id="@+id/tableRow2" 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" > 

          <CheckBox 
           android:id="@+id/cbShopping" 
           android:layout_width="0dp" 
           android:layout_height="wrap_content" 
           android:layout_weight="1" 
           android:text="@string/drawer_select_shopping" 
           android:textSize="14sp" /> 

          <CheckBox 
           android:id="@+id/cbEmbrassies" 
           android:layout_width="0dp" 
           android:layout_height="wrap_content" 
           android:layout_weight="1" 
           android:text="@string/drawer_select_embrassies" 
           android:textSize="14sp" /> 

          <CheckBox 
           android:id="@+id/checkBox3" 
           android:layout_width="0dp" 
           android:layout_height="wrap_content" 
           android:layout_weight="1" 
           android:text="@string/drawer_select_attaction" 
           android:textSize="14sp" /> 
         </TableRow> 

         <TableRow 
          android:id="@+id/tableRow3" 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" > 

          <CheckBox 
           android:id="@+id/cbShopping1" 
           android:layout_width="0dp" 
           android:layout_height="wrap_content" 
           android:layout_weight="1" 
           android:text="@string/drawer_select_hospital" 
           android:textSize="14sp" /> 

          <CheckBox 
           android:id="@+id/cbEmbrassies1" 
           android:layout_width="0dp" 
           android:layout_height="wrap_content" 
           android:layout_weight="1" 
           android:text="@string/drawer_select_bank" 
           android:textSize="14sp" /> 

          <CheckBox 
           android:id="@+id/checkBox4" 
           android:layout_width="0dp" 
           android:layout_height="wrap_content" 
           android:layout_weight="1" 
           android:text="@string/drawer_select_police" 
           android:textSize="14sp" /> 
         </TableRow> 
        </TableLayout> 

我现在的表
enter image description here

结果我想
enter image description here

回答

1

从每个复选框取出android:layout_weight="1"并设置android:layout_width="wrap_content"。这是令人困惑的TableRow。然后,设置android:stretchColumns="*"而不是1。这会将可用宽度分配给所有列。

+0

感谢您的回复,但没有任何变化。空间依然存在 – Dolphin

+0

这帮了我!我所要做的就是从xml中移除android:layout_weight =“1”,并且它工作正常。 – BostonGeorge