为什么我不能让我的按钮在表格布局中水平居中

时间:2014-06-23 06:40:51

标签: android xml button layout

我所拥有的是按钮,我已将它们插入表格布局中,每个按钮都有一个背景图像,我已经尝试了所有方法使按钮在每一行中居中但是它不起作用..这是我的xml代码:

 <android.support.v4.widget.DrawerLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/background">
   <TableLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
         android:orientation="horizontal"
       >
       <TableRow
           android:id="@+id/tableRow1"
           android:layout_height="wrap_content"
          android:layout_width="wrap_content"
           android:layout_marginBottom="20sp"
            android:layout_marginTop="20sp"
           android:layout_gravity="center"

          >
       <Button
        android:id="@+id/button1"
        android:layout_width="170sp"
        android:layout_height="60sp"

        android:layout_gravity="center_horizontal"
        android:background="@drawable/zebra" 

       />
      </TableRow>
       <TableRow 
            android:id="@+id/tableRow2"
            android:layout_marginBottom="20sp"
               android:layout_height="wrap_content"
          android:layout_width="wrap_content"
               android:layout_gravity="center">
           <Button
        android:id="@+id/button2"
        android:layout_width="170sp"
        android:layout_height="60sp"
        android:layout_gravity="center_horizontal"
        android:background="@drawable/roller" 
       />
  </TableRow>
   <TableRow
       android:id="@+id/tableRow3"
       android:layout_marginBottom="20sp"
          android:layout_gravity="center_horizontal">
    <Button
        android:id="@+id/button3"
        android:layout_width="170sp"
        android:layout_height="60sp"
        android:layout_gravity="center_horizontal"

        android:background="@drawable/wooden" />
      </TableRow>
       <TableRow
           android:id="@+id/tableRow4"
           android:layout_marginBottom="20sp"
              android:layout_gravity="center_horizontal">
    <Button
        android:id="@+id/button4"
        android:layout_width="170sp"
        android:layout_height="60sp"
       android:layout_gravity="center_horizontal"

        android:background="@drawable/roman" />
     </TableRow>
    </TableLayout>


    <!-- Framelayout to display Fragments -->
  <FrameLayout
       android:id="@+id/frame_container"
       android:layout_width="match_parent"
       android:layout_height="match_parent"
       android:layout_alignParentLeft="true"
       android:layout_alignParentTop="true" >
   </FrameLayout>
    <!-- Listview to display slider menu -->
    <ListView
        android:id="@+id/list_slidermenu"
        android:layout_width="240dp"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:choiceMode="singleChoice"
        android:divider="#ffffff"
        android:dividerHeight="1dp"        
        android:listSelector="@drawable/list_selector"
        android:background="#703534"/>
</android.support.v4.widget.DrawerLayout>

2 个答案:

答案 0 :(得分:2)

android:gravity="center" 

在每个tablerow中使用它。为我工作。

答案 1 :(得分:1)

将此添加到按钮标记 android:layout_centerHorizo​​ntal =“true”如果不起作用,则将此标记添加到tablerow