我有一个相同大小的按钮的 XML 网格表布局菜单,这些按钮根据手机分辨率改变它们的大小。这个想法是让菜单用同样大小的按钮填满屏幕。当按钮没有文本标签时,这非常有效。但是一旦我在按钮上添加文本,那么按钮的宽度也会受到文本的影响。如果我将文本大小更改为较小的大小,则按钮会自动重新调整大小以小于其他按钮。例如: 按钮 A 的名称是“主页” 按钮 B 的名称是“通知” 我的问题是按钮 B 变得比按钮 A 大,我希望所有按钮都具有相同的宽度,无论标签文本大小是多少。我还将附上 XML 布局。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="4dp"
android:background="#2b2c31"
android:orientation="vertical" >
<include
android:layout_width="fill_parent"
android:layout_height="wrap_content"
layout="@layout/layout_topheader" />
<TableLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="10dp"
android:stretchColumns="*" >
<TableRow
android:layout_weight="1"
android:gravity="center"
android:padding="10dp" >
<Button
android:id="@+id/buttonScan"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@drawable/btn"
android:text="Refill"
android:layout_margin="10dp"
android:textColor="@color/status_text"
android:textSize="30dip"
android:textStyle="bold" />
<Button
android:id="@+id/buttonSetReminder"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@drawable/btn"
android:text="Reminders"
android:layout_margin="10dp"
android:textColor="@color/status_text"
android:textSize="30dip"
android:textStyle="bold" />
</TableRow>
<TableRow
android:layout_weight="1"
android:gravity="center"
android:padding="10dp" >
<Button
android:id="@+id/buttonRewards"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@drawable/btn"
android:layout_margin="10dp"
android:textSize="30dip"
android:textColorHint="@color/status_text"
android:textColor="@color/status_text"
android:text="Rewards"
android:textStyle="bold" />
<Button
android:id="@+id/buttonTracker"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@drawable/btn"
android:text=" Tracker"
android:layout_margin="10dp"
android:textColor="@color/status_text"
android:textSize="30dip"
android:textStyle="bold" />
</TableRow>
<TableRow
android:layout_weight="1"
android:gravity="center"
android:padding="10dp" >
<Button
android:id="@+id/buttonProfile"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@drawable/btn"
android:text="Profile"
android:layout_margin="10dp"
android:textColor="@color/status_text"
android:textSize="30dip"
android:textStyle="bold" />
<Button
android:id="@+id/buttonChat"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@drawable/chaticon"
android:text="Chat"
android:layout_margin="10dp"
android:textColor="@color/status_text"
android:textSize="30dip"
android:textStyle="bold" />
</TableRow>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#ffffff"
android:orientation="vertical" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:src="@drawable/add3" />
</LinearLayout>
</TableLayout>
</LinearLayout>