0

Android 2.3.4チェックボックスのビットマップを変更しましたが、ビットマップのサイズを設定してスケーリングしたいと思います。チェックボックスを次のように変更しました。

<CheckBox
    android:id="@+id/cb1"
    android:button="@drawable/checkbox"
    android:layout_alignParentLeft="true"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="Sort: 1" />

一致するxmlドローアブル

<?xml version="1.0" encoding="utf-8"?>

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_checked="true"  android:state_focused="true"    android:drawable="@drawable/checkbox_on_background_focus_yellow"/>
    <item android:state_checked="false" android:state_focused="true"    android:drawable="@drawable/checkbox_off_background_focus_yellow"/>
    <item android:state_checked="false" android:drawable="@drawable/checkbox_off_background" />
    <item android:state_checked="true"  android:drawable="@drawable/checkbox_on_background" />
</selector>

チェックボックスのビットマップのサイズを変更するためにdip/dp値を設定するにはどうすればよいですか?

4

3 に答える 3

14

実際、画像をチェックボックスのサイズに設定するためにできることは、

android:button="@null"
android:background="@drawable/checkbox" <!-- your custom selector -->

これにより、カスタムチェックボックス画像(チェックされている状態とチェックされていない状態の両方)が常にチェックボックスのサイズに収まります。

于 2013-05-03T14:04:59.850 に答える
2

ビットマップを適切なサイズにすることで解決しました。現在はスケーリングできませんが、dpi設定を変えていくつかのデバイスでテストしましたが、問題ないようです。今のところ。

于 2012-04-16T23:47:22.903 に答える
0

関連するDrawableを定義し、それらをチェックボックスのプロパティに設定するだけです。

android:background="@drawable/my_background"
于 2012-04-14T21:31:04.880 に答える