如何改变android复选框按钮的大小?

时间:2012-04-14 21:27:35

标签: java android checkbox bitmap

我更改了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 drawable

<?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值来更改复选框位图的大小?

3 个答案:

答案 0 :(得分:11)

实际上,将图像设置为复选框大小所能做的就是放

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

有了这个,您的自定义复选框图像(在两种状态下,已选中和未选中)将始终适合您的复选框的大小。

答案 1 :(得分:2)

我通过使位图的大小合适来解决它。我现在无法扩展它,但我在几个具有不同dpi设置的设备上进行了测试,看起来很好。现在。

答案 2 :(得分:0)

只需定义相关的Drawable并将其设置为复选框属性。

android:background="@drawable/my_background"