Android 控件六 CheckBox 控件

前言

本文简记 Android 控件 CheckBox 的常用属性及使用方法。

与 RadioButton 控件不同

一个 RadioGroup 控件包含多个 RadioButton 控件组成一个单选列表是必要的。

而单个 CheckBox 控件可以实现选择与取消选择,每个 CheckBox 控件相对独立。对于 CheckBox 控件,并不存在一个类似于 RadioGroup 对 RadioButton 作用的控件。

常用属性

CheckBox 控件的常用属性与 RadioButton 控件相差不大。

基础属性

  • 请参阅:Android 布局与相关属性 的基础属性部分。

    包括:id 属性,宽度、高度属性,背景属性,内、外边距属性等。

文本相关

  • 文本内容属性:android:text=""
  • 文本颜色属性:android:textColor=""
  • 文本字体大小属性:android:textSize="" ,一般单位 sp

权重属性

按钮样式属性

  • 按钮样式属性:android:button=""

    值:

    • @null :不显示选中按钮

    • @drawable/xxxxxx :使用 xxxxxx.xml 文件或 xxxxxx.PNG 等格式图片可以作为选中框的变化。

      这里的图片一般是 20~50dp * 20~50dp 的 PNG 等格式的图片。

  • android:button="@drawable/xxxxxx" 格式,可以通过 selector 格式 xml 文件,使用:

    • android:state_checked="" :设置选中时要触发的 <item>
    • android:drawable="" :配合 android:state_checked="" 显示对应图标。

    selector 格式 xml 文件示例:

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

预先选中属性

  • 预先选中属性:android:checked=""

    值:

    • false :默认,不预先选中;
    • true :可设置,预先选中。

Java 监听选中变化

可以使用 RadioGroup 控件的监听选中变化方法进行监听操作。

  • 使用

    RadioGroup RG_1 = findViewById(R.id.RG_1);
    RG_1.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
    	@Override
    	public void onCheckedChanged(RadioGroup radioGroup, int i) {
    		RadioButton radioButton = radioGroup.findViewById(i);
    		Toast.makeText(RadioButtonShowActivity.this, radioButton.getText(), Toast.LENGTH_SHORT).show();
    	}
    });
    

    在 Activity 活动的 protected void onCreate(Bundle savedInstanceState) {} 中进行监听。

实例

posted @ 2020-06-19 16:03  Yogile  阅读(386)  评论(0编辑  收藏  举报