我使用的是自定义背景颜色,该颜色会根据复选框的状态而变化,因此我的背景属性已被使用。大多数建议告诉我将背景设置为@null。我只想保留文本并删除左侧的框。
我已经可以更改背景颜色和文本颜色。我只想取下盒子。
<CheckBox
android:text="CheckBox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/checkbox_selector"
android:textColor="@color/checkbox_text"/>
最佳答案
您可以通过复选框的 button
属性来更改 check drawable
,如下所示,根据您的要求:
<CheckBox
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:clickable="true"
android:focusable="true"
android:background="@drawable/checkbox_selector"
android:button="@drawable/cb_show_hide_selector"
android:textColor="@color/checkbox_text"
android:text="this is a checkbox"/>
在 drawable 文件夹
中创建名为 "cb_show_hide_selector.xml"
的文件并添加以下代码:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_checked="true"
android:drawable="@drawable/ic_input_check" /> // for checked state
<item android:state_pressed="true"
android:drawable="@drawable/ic_input_check" /> // for checked state
<item android:state_pressed="false"
android:drawable="@android:color/transparent" /> // for unchecked state
</selector>
关于Android复选框删除框保留文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57212598/