按钮尺寸与图像

时间:2013-01-26 12:45:34

标签: android button drawable

你能帮我解决一下我的小问题吗? 我有一个由按钮组成的桌子。在我的xml文件中,按钮具有此代码

<Button
            android:id="@+id/b_0xa"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:clickable="false"
            android:text="@string/b_0xa" />

在我的main.class中,我有这一行:

b_0xb.setBackgroundResource(R.drawable.green);

因为我想在点击它后更改按钮的背景。 它工作正常,但是当我运行我的应用程序时,这就是结果。

enter image description here

我该如何解决? 我需要一个宽度为==高度的按钮。

非常感谢

2 个答案:

答案 0 :(得分:0)

我将表布局中的所有按钮分组,这是代码

<TableLayout
    android:id="@+id/tableLayout1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true" >

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

        <Button
            android:id="@+id/b_0xa"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:clickable="false"
            android:text="@string/b_0xa" />

        <Button
            android:id="@+id/b_0xb"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:clickable="false"
            android:text="@string/b_0xb" />

        <Button
            android:id="@+id/b_0xc"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:clickable="false"
            android:text="@string/b_0xc" />

        <Button
            android:id="@+id/b_0xd"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:clickable="false"
            android:text="@string/b_0xd" />

        <Button
            android:id="@+id/b_0xe"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:clickable="false"
            android:text="@string/b_0xe" />

        <Button
            android:id="@+id/b_0xf"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:clickable="false"
            android:text="@string/b_4xb" />
    </TableRow>

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

        <Button
            android:id="@+id/b_1xa"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:clickable="false"
            android:text="@string/b_1xa" />

        <Button
            android:id="@+id/b_1xb"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:clickable="false"
            android:text="@string/b_1xb" />

        <Button
            android:id="@+id/b_1xc"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:clickable="false"
            android:text="@string/b_1xc" />

        <Button
            android:id="@+id/b_1xd"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:clickable="false"
            android:text="@string/b_1xd" />

        <Button
            android:id="@+id/b_1xe"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:clickable="false"
            android:text="@string/b_1xe" />

        <Button
            android:id="@+id/b_1xf"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:clickable="false"
            android:text="@string/b_4xb" />
    </TableRow>

答案 1 :(得分:0)

有一些方法,我不确定但是想让你尝试下面的事情。

1)删除android:layout_weight="1"

2)在xml中设置静态高度和重量,如layout_width =“50dip”layout_Height =“50dip”

3)通过检查width参数在Activity / onCreate中设置高度。喜欢view.getHeight(); ...