gpt4 book ai didi

Android 用自定义可绘制选择器替换复选框样式

转载 作者:太空狗 更新时间:2023-10-29 15:29:21 29 4
gpt4 key购买 nike

我尝试使用以下内容制作一个 xml 选择器:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/shuffleon" android:state_checked="true" />
<item android:drawable="@drawable/shuffleoff" android:state_selected="false" />
</selector>

当我尝试将 backgroundDrawable 设置为 checkBox 时,复选框也不会替换 CheckBox 样式:

  shuffle.setBackground(android.support.v4.content.res.ResourcesCompat.getDrawable(getResources(), R.drawable.shuffle, null));

跟随这个问题:Change icons of checked and unchecked for Checkbox for Android我需要用我的 xml 设置 button drawable:android:button="@drawable/checkbox" 但我不能这样做,因为我正在创建 CheckBox 以编程方式。有没有办法实现这一目标?

最佳答案

简单方法

  1. 在drawable文件夹中新建一个layout,命名为custom_checkbox(也可以重命名)

    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/Checked_image_name"android:state_checked="true"/>
    <item android:drawable="@drawable/Unchecked_image_name" android:state_checked="false"/>
    </selector>
  2. 在您的布局 Activity 中使用它

    <CheckBox
    android:id="@+id/checkbox"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:button="@drawable/custom_checkbox"/>

关于Android 用自定义可绘制选择器替换复选框样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31183713/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com