1

我想在一个表格中显示 9 个按钮,每行 3 个按钮。所有按钮都具有相同的尺寸。你能告诉我如何在屏幕中间显示这个表格吗?表是解决方案还是我走错了路?

<?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_gravity = "center_horizontal"

     >  
    <TableRow>  

<ImageButton android:id="@+id/btn1"  
 android:layout_width="60px"   
    android:layout_height="80px"  
    android:layout_margin="10px"  
    android:clickable="true"  
    android:tag="1"  
    android:background="@drawable/xo" 

 />  

<ImageButton android:id="@+id/btn2"  
 android:layout_width="60px"   
    android:layout_height="80px"  
    android:layout_margin="10px"  
    android:clickable="true"  
    android:tag="2"  
 android:background="@drawable/xo" 

 />   
<ImageButton android:id="@+id/btn3"  
 android:layout_width="60px"   
    android:layout_height="80px"  
    android:layout_margin="10px"  
    android:clickable="true"  
    android:tag="3"  
 android:background="@drawable/xo" 


 />  
 </TableRow>  
 <TableRow>  
<ImageButton android:id="@+id/btn4"  
 android:layout_width="60px"   
    android:layout_height="80px"  
    android:layout_margin="10px"  
    android:clickable="true"  
    android:tag="4"  
 android:background="@drawable/xo" 
 />  
<ImageButton android:id="@+id/btn5"  
 android:layout_width="60px"   
    android:layout_height="80px"  
    android:layout_margin="10px"  
    android:clickable="true"  
    android:tag="5"  
  android:background="@drawable/xo" 

 />  
<ImageButton android:id="@+id/btn6"  
 android:layout_width="60px"   
    android:layout_height="80px"  
    android:layout_margin="10px"  
    android:clickable="true"  
    android:tag="6"  
 android:background="@drawable/xo" 

 />  

</TableRow>  
 <TableRow>  
<ImageButton android:id="@+id/btn7"  
 android:layout_width="60px"   
    android:layout_height="80px"  
    android:layout_margin="10px"  
    android:clickable="true"  
    android:tag="7"  
 android:background="@drawable/xo" 

 />  
<ImageButton android:id="@+id/btn8"  
 android:layout_width="60px"   
    android:layout_height="80px"  
    android:layout_margin="10px"  
    android:clickable="true"  
    android:tag="8"  
  android:background="@drawable/xo" 

 />  
<ImageButton android:id="@+id/btn9"  
 android:layout_width="60px"   
    android:layout_height="80px" 
    android:layout_margin="10px"  
    android:clickable="true"  
    android:tag="9"  
  android:background="@drawable/xo" 

 />  

</TableRow>    
</TableLayout>
4

1 回答 1

1

将表格包装在另一个 ViewGroup 中。

  1. 将父母的重力设置为“中心”。
  2. 将父级的高度和宽度设置为“fill_parent”
  3. 将表格的高度和宽度设置为“wrap_content”

现在您的表格将在另一个占据整个屏幕的布局中居中。

<LinearLayout 
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" 
    android:gravity="center">

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"  
    android:layout_width="wrap_content"  
    android:layout_height="wrap_content"  

     >  
    <TableRow>  

<ImageButton android:id="@+id/btn1"  
 android:layout_width="60px"   
    android:layout_height="80px"  
    android:layout_margin="10px"  
    android:clickable="true"  
    android:tag="1"  
    android:background="@drawable/xo" 

 />  

<ImageButton android:id="@+id/btn2"  
 android:layout_width="60px"   
    android:layout_height="80px"  
    android:layout_margin="10px"  
    android:clickable="true"  
    android:tag="2"  
 android:background="@drawable/xo" 

 />   
<ImageButton android:id="@+id/btn3"  
 android:layout_width="60px"   
    android:layout_height="80px"  
    android:layout_margin="10px"  
    android:clickable="true"  
    android:tag="3"  
 android:background="@drawable/xo" 


 />  
 </TableRow>  
 <TableRow>  
<ImageButton android:id="@+id/btn4"  
 android:layout_width="60px"   
    android:layout_height="80px"  
    android:layout_margin="10px"  
    android:clickable="true"  
    android:tag="4"  
 android:background="@drawable/xo" 
 />  
<ImageButton android:id="@+id/btn5"  
 android:layout_width="60px"   
    android:layout_height="80px"  
    android:layout_margin="10px"  
    android:clickable="true"  
    android:tag="5"  
  android:background="@drawable/xo" 

 />  
<ImageButton android:id="@+id/btn6"  
 android:layout_width="60px"   
    android:layout_height="80px"  
    android:layout_margin="10px"  
    android:clickable="true"  
    android:tag="6"  
 android:background="@drawable/xo" 

 />  

</TableRow>  
 <TableRow>  
<ImageButton android:id="@+id/btn7"  
 android:layout_width="60px"   
    android:layout_height="80px"  
    android:layout_margin="10px"  
    android:clickable="true"  
    android:tag="7"  
 android:background="@drawable/xo" 

 />  
<ImageButton android:id="@+id/btn8"  
 android:layout_width="60px"   
    android:layout_height="80px"  
    android:layout_margin="10px"  
    android:clickable="true"  
    android:tag="8"  
  android:background="@drawable/xo" 

 />  
<ImageButton android:id="@+id/btn9"  
 android:layout_width="60px"   
    android:layout_height="80px" 
    android:layout_margin="10px"  
    android:clickable="true"  
    android:tag="9"  
  android:background="@drawable/xo" 

 />  

</TableRow>    
</TableLayout>
</LinearLayout>
于 2012-10-24T20:18:04.290 回答