Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/179.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 大屏幕中的布局间距问题_Java_Android_Android Layout - Fatal编程技术网

Java 大屏幕中的布局间距问题

Java 大屏幕中的布局间距问题,java,android,android-layout,Java,Android,Android Layout,有人知道为什么会这样吗: 在10英寸的平板电脑屏幕上,字母框没有正确对齐,但在7英寸和4.7英寸的屏幕上,字母框工作正常 以下是我的XML布局: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical"

有人知道为什么会这样吗:

在10英寸的平板电脑屏幕上,字母框没有正确对齐,但在7英寸和4.7英寸的屏幕上,字母框工作正常

以下是我的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,但都没用


非常感谢您的帮助。

您可以将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>


您可以将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>

只需更换

android:layout_width = "wrap_content"

请尝试以下布局:

<?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>

请检查我刚才在回答中发布的修改后的布局。当我测试时,它对我来说运行良好。当您在线性布局中指定布局权重时,最好使用布局宽度或布局高度作为填充父级,因为线性布局根据布局权重属性调整布局,而不考虑其中的内容布局

让我知道它是否也适用于您!

更换即可

android:layout_width = "wrap_content"

请尝试以下布局:

<?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>

请检查我刚才在回答中发布的修改后的布局。当我测试时,它对我来说运行良好。当您在线性布局中指定布局权重时,最好使用布局宽度或布局高度作为填充父级,因为线性布局根据布局权重属性调整布局,而不考虑其中的内容布局


让我知道它是否也适用于您!

它使E小于a。在这种情况下,请查看TableLayout。它允许您指定要等宽的列。我的答案已更新以反映这一点。请参阅我添加的示例。我从Big Nerd Ranch的Android指南中获得此想法。第26章建议使用TableLayout显示计算器键时,这与您正在执行的操作非常相似。TableLayout的问题是,如果屏幕尺寸变大,我必须指定高度。对于当前布局,高度和宽度与屏幕匹配,但只是没有正确对齐。这会使E小于AInteresting。在这种情况下,请查看TableLayout。它允许您指定要等宽列。我的答案已更新以反映这一点。请参阅我添加的示例。我从Big Nerd Ranch的Android指南中获得了这个想法。第26章建议在显示计算器键时使用TableLayout,这与您正在做的非常类似。TableLayout的问题,我必须如果屏幕尺寸变大,请在高度上签名。在当前布局中,高度和宽度与屏幕匹配,但没有正确对齐。您刚刚写了“用X替换X”?您确定这就是您的意思吗?您刚刚写了“用X替换X”?您确定这就是您的意思吗?