自定义复选框的大小可绘制?

use*_*265 3 android android-layout android-xml

我创建了一个自定义复选框drawable:

<selector  xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:state_checked="false"
        android:drawable="@drawable/ic_checkbox_unchecked" />
    <item
        android:state_checked="true"
        android:drawable="@drawable/ic_checkbox_checked" />
    <item
        android:drawable="@drawable/ic_checkbox_unchecked" />
</selector>
Run Code Online (Sandbox Code Playgroud)

我用的是这样的:

<CheckBox
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentEnd="true"
    android:layout_centerVertical="true"
    android:button="@drawable/checkbox"
    />
Run Code Online (Sandbox Code Playgroud)

我创建了两个可绘制图像(一个用于未检查,一个用于检查),一个用于每个尺寸(xxxhdpi,xxhdpi等).

但是,我的复选框出现如下:

在此输入图像描述

它为什么这么大?如何将其缩小到20x20dp?

Col*_*iza 5

而不是wrapcontent尝试

<CheckBox
android:layout_width="20dp"
android:layout_height="20dp"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:button="@drawable/checkbox"
/>
Run Code Online (Sandbox Code Playgroud)

要么

<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:button="@drawable/checkbox"
android:scaleX="0.40"
android:scaleY="0.40"
/>
Run Code Online (Sandbox Code Playgroud)

更改比例值,直到达到所需要的值size.