2

グリッドに画像ボタンを表示するために使用している次のテーブル レイアウトがあります。

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/tableLayout1"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

<TableRow
    android:id="@+id/tableRow4"
    android:layout_weight="1" >

    <ImageButton
        android:id="@+id/button_one"
        android:layout_width="0dp"
        android:layout_height="fill_parent"
        android:layout_weight="1"
        android:adjustViewBounds="true"
        android:background="@drawable/button"
        android:scaleType="fitCenter"
        android:src="@drawable/button_one" />

    <ImageButton
        android:id="@+id/button_two"
        android:layout_width="0dp"
        android:layout_height="fill_parent"
        android:layout_weight="1"
        android:adjustViewBounds="true"
        android:background="@drawable/button"
        android:scaleType="fitCenter"
        android:src="@drawable/button_two" />
</TableRow>

<TableRow
    android:id="@+id/tableRow4"
    android:layout_weight="1" >

    <ImageButton
        android:id="@+id/button_three"
        android:layout_width="0dp"
        android:layout_height="fill_parent"
        android:layout_weight="1"
        android:adjustViewBounds="true"
        android:background="@drawable/button"
        android:scaleType="fitCenter"
        android:src="@drawable/button_three" />
</TableRow>

ご覧のとおり、最初の行には 2 つの列が含まれ、2 番目の行には 1 つの列が含まれています。

表のセルに合わせて画像を拡大したい。ただし、下部の画像ボタンの端は、上部の 2 つの画像ボタンと完全には一致しません。下のセルに余分なパディングまたはマージンがあるかのようです。

これらを完全に並べる方法はありますか?

前もって感謝します。

スクリーンショット:

ここに画像の説明を入力

4

2 に答える 2

0

vasartが述べたように、すべてfitCenterをに置き換えるとうまくfitXYいきます

更新された XML:

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/tableLayout1"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#ffffff" >

    <TableRow
        android:id="@+id/tableRow4"
        android:layout_weight="1" >

        <ImageButton
            android:id="@+id/button_one"
            android:layout_width="0dp"
            android:layout_height="fill_parent"
            android:layout_weight="1"
            android:adjustViewBounds="true"
            android:background="@drawable/button"
            android:scaleType="fitXY" />

        <ImageButton
            android:id="@+id/button_two"
            android:layout_width="0dp"
            android:layout_height="fill_parent"
            android:layout_weight="1"
            android:adjustViewBounds="true"
            android:background="@drawable/button"
            android:scaleType="fitXY" />
    </TableRow>

    <TableRow
        android:id="@+id/tableRow5"
        android:layout_weight="1" >

        <ImageButton
            android:id="@+id/button_three"
            android:layout_width="0dp"
            android:layout_height="fill_parent"
            android:layout_weight="1"
            android:adjustViewBounds="true"
            android:background="@drawable/button"
            android:scaleType="fitXY" />
    </TableRow>

</TableLayout>
于 2012-07-12T10:29:58.510 に答える
0

私はこの問題を解決しました...

角が曲がっていたので、元々は背景に9パッチのドローアブルを使用していましたが、角が鋭い通常の画像に切り替えるときに、画像から境界線を削除するのを忘れていました...おお!画像をやり直すと問題が解決しました-私のxmlはそのままで問題ありませんでした。

/手のひらの顔

于 2012-07-13T11:49:16.913 に答える