0

リストで 2 つのボタンを使用しています。1つはaToggleButtonで、もう1つはレギュラーですImageButton

XMLで設定した方法は次のとおりです。

    <ToggleButton android:id="@+id/favc"
        android:layout_width="32dp"
        android:layout_height="32dp"
        android:background="#ffffff"
        android:padding="15dp"
        android:layout_gravity="center"
        android:focusable="false"
        android:layout_marginRight="10dp"
        android:textOn="" android:textOff=""
        />


    <ImageButton
        android:id="@+id/edit"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:background="#ffffff"
        android:gravity="center"
        android:focusable="false"
        android:layout_marginRight="10dp"
        android:layout_alignParentLeft="true"
        android:padding="15dp"
        android:src="@drawable/pencil"/>

ボタンを切り替えるロジックは、リスト アダプターにあります。

if (holder.favButton.isChecked())
    holder.favButton.setBackgroundDrawable(getResources().getDrawable(R.drawable.star_pressed));
else
    holder.favButton.setBackgroundDrawable(getResources().getDrawable(R.drawable.star_1));

質問/問題

通常のサイズの画面ではすべて正常に動作します。ただし、これをタブレットでテストすると、ToggleButtonは に比べてサイズが非常に大きくなりImageButtonます。すべての res フォルダーの画像サイズを確認しました。これは私が持っているものです:

hdpi = 24 x 24 (pencil), 24 x 23 (star)
mdpi = 16 x 16 (pencil), 16 x 15 (star)
xhdi = 32 x 32 (pencil), 34 x 32 (star)
xxhdi = 42 x 42 (pencil), 51 x 48 (star)

タブレットだとこんな感じ

ここに画像の説明を入力

普通のスマホだとこんな感じ

ここに画像の説明を入力

32dp私も試してみましwrap_contentたが、それも役に立ちませんでした。

4

0 に答える 0