效果图

是否被选中打印效果图图

CheckBox  是多选框 ,选中之后可以再次点击取消操作.

在使用的时候注意padding 是相对于字体来的不是相对选择框

下面第一个位置调整了 使用了paddingleft

在androidx以前布局

    <CheckBoxandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="同意本协议" />

在androidx 中布局使用  使用(不过使用CheckBox还是可以的)

    <androidx.appcompat.widget.AppCompatCheckBoxandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:paddingLeft="10dp"android:text="同意本协议" />

下面说想修改前面的图片

CheckBox 修改选择框的图片 可以通过使用style 或者直接是不button 来修改

1 通过 style

xml 代码如下

    <CheckBoxandroid:id="@+id/checkbox"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="同意本协议"style="@style/checkbox"/>

values 里面 styles 代码如下

    <style name="checkbox"><item name="android:button">@drawable/checkbox</item></style>

checkbox 使用selector如下

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

这样修改好了,

2 直接使用button

 <CheckBoxandroid:id="@+id/checkbox"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="同意本协议"android:button="@drawable/checkbox"/>
checkbox 的代码
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android"><item android:drawable="@drawable/check_unselect" android:state_checked="false" /><item android:drawable="@drawable/checkselect" android:state_checked="true" />
</selector>

关于CheckBox 是否被选中的监听 使用setOnCheckedChangeListener 如下

public class MainActivity extends AppCompatActivity {private CheckBox checkBox;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);checkBox = findViewById(R.id.checkbox);checkBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {@Overridepublic void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {Log.e("--------是否被选中", String.valueOf(isChecked));}});}
}

做多选筛选的时候使用也是比较方便的

下面多一个多选题效果图如下

代码

  <CheckBoxandroid:id="@+id/checkbox11"android:layout_marginLeft="17dp"android:layout_marginRight="17dp"android:layout_width="match_parent"android:layout_height="40dp"android:layout_marginTop="10dp"android:gravity="center"android:button="@null"android:background="@drawable/drawable_radio_bg"android:text="选举权和被选举权" /><CheckBoxandroid:id="@+id/checkbox22"android:layout_marginLeft="17dp"android:layout_marginRight="17dp"android:layout_width="match_parent"android:layout_height="40dp"android:layout_marginTop="10dp"android:gravity="center"android:button="@null"android:background="@drawable/drawable_radio_bg"android:text="劳动权" /><CheckBoxandroid:id="@+id/checkbox33"android:layout_marginTop="10dp"android:layout_marginLeft="17dp"android:layout_marginRight="17dp"android:layout_width="match_parent"android:layout_height="40dp"android:gravity="center"android:button="@null"android:background="@drawable/drawable_radio_bg"android:text="受教育权" /><CheckBoxandroid:id="@+id/checkbox44"android:layout_marginLeft="17dp"android:layout_marginRight="17dp"android:layout_width="match_parent"android:layout_marginTop="10dp"android:layout_height="40dp"android:gravity="center"android:button="@null"android:background="@drawable/drawable_radio_bg"android:text="监督权" />

drawable  里面的drawable_radio_bg

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

然后就是radio_bg

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"><corners android:radius="10dp"/><stroke android:color="#1296db" android:width="1dp"/>
</shape>

radio_select_bg

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"><corners android:radius="10dp"/><solid android:color="#1296db"/>
</shape>

这样就实现了效果

demo 参考地址

Android CheckBox 修改选择框相关推荐

  1. Android RadioButton 修改选择框

    效果图 是否被选中打印效果图 RadioButon  是单选框 ,选中之后再次点击无法取消,这样呢我们可以配合RadioGroup 使用,选择其他的RadioButton 这样的话刚才的的那个就取消了 ...

  2. Android CheckBox 复选框(自定义复选框)

    一.正常使用 代码 <!-- CheckBox --> <CheckBoxandroid:id="@+id/man"android:layout_width=&q ...

  3. android 按钮修改边框颜色代码,Android CheckBox修改大小、边框颜色,以及自定义CheckBox;...

    CheckBox修改大小: android:scaleX="0.8" android:scaleY="0.8" CheckBox修改边框颜色,注意不是背景色: ...

  4. 重写Checkbox 改写选择框的大小

    /* 作者:Starts_2000* 日期:2009-07-30* 网站:http://www.csharpwin.com CS 程序员之窗.* 你可以免费使用或修改以下代码,但请保留版权信息.* 具 ...

  5. Android 下拉选择框自定义view

    首先来看一下实现的效果 基本思路:继承PopupWindow的自定义View 说明:下图这部分自己布局,本文中主要说明的是点击某个分类显示的下拉实现 第一步:自定义 SpinnerPopuwindow ...

  6. android——下拉选择框(自定义spinner)

    相信大家都有遇到下拉选择这个功能,接下来我把我学习的给大家分享一下. 一.导入依赖 implementation 'com.github.arcadefire:nice-spinner:1.4.4' ...

  7. 修改CheckBox选择框、设置选择框颜色

    使用组件自带的属性 android:buttonTint 可直接设置选择框的颜色 修改选择框选中与未选中时的状态,需设置选择器 selector.XML <?xml version=" ...

  8. android checkbox 文字和图标间距,CheckBox选择框和文字设置间距

    由于界面美观度的需求,需要自定义CheckBox的选择框. 传统的方法是先定义一个CheckBox的自定义style,如下: style中使用的checkbox_selector.xml 最后在布局文 ...

  9. com.android.kyj.onj,Android 自学之列表选择框Spinner

    列表选择框(Spinner)与Swing编程里面的Spinner不同,这里的Spinner其实就是一个列表选项框. Spinner是ViewGroup的间接子类,因此他也可作为容器使用. Spinne ...

最新文章

  1. 【Android】Vitamio 4.0 公测版发布(2013-05-28)
  2. python api调用展示_Python百视api调用示例
  3. Linux bc 命令简单学习
  4. 对于SpringMVC框架使用的时候出现“警告: No mapping found for HTTP request with URI [/login]”的问题解决方案...
  5. HandlerInterceptor拦截器的使用
  6. Vivado入门使用指南之----多路分频器(逻辑分析仪IP的使用以及前后仿真及ip的基本使用)
  7. golang中的异常如何捕获?
  8. 智慧医疗何去何从?阿里云和行行查联合发布了《2021年中国智慧医疗行业白皮书》
  9. 木马文件slader以及各种捆绑木马、流氓软件
  10. 应急响应-Linux入侵排查
  11. 那些年用过的机械键盘
  12. 南开100题C语言(001-010)
  13. IP地址规划和设计方法
  14. 数据结构与算法分析(七)递归
  15. yuki翻译器钩子_最新YUKI GALGAME翻译器下载地址电脑版-CC软件
  16. 83行代码通关攻略|据说看的人都过了
  17. 手摸手教你搭个脚手架
  18. linux开机自检时间长,Linux 开机自检的设置(tune2fs和fsck)
  19. pod健康检查详解(liveness,readiness,滚动更新)
  20. 因为迁移,所以出卖(1)

热门文章

  1. Redis 笔记(02)— keys 键相关命令(查询数据库key数量、判断key是否存在、指定key过期时间、查看key类型、查看key剩余秒数、选择数据库、删除key、删除数据库)
  2. 阿里巴巴图学习框架 euler 安装运行记录
  3. events.out.tfevents文件
  4. java中调用python
  5. [翻译]Python中yield的解释
  6. pip、conda 换国内源,大大提高下载速度
  7. Pytorch系列教程-使用Seq2Seq网络和注意力机制进行机器翻译
  8. 8080CPU寄存器划分
  9. 机器人导航两篇顶级会议论文解析
  10. python 使用 struct 把数据变成字节流