Android RadioButton 单选框使用

一、简介

  • RadioButton 为单选框,存在多个选项情况下,需要将 RadioButton 放到 RadioGroup 组中使用,从而实现单选功能。

  • RadioGroup 中可以通过 orientation 来控制排列方式,水平还是垂直。

    image.png

    image.png

  • RadioGroup 常用属性

    属性 含义
    getChildCount() 获取按钮组中单选按钮数量
    getChildAt() 获取按钮组中指定索引的单选按钮
    check() 设置单选按钮 ID 进行选中
  • RadioButton 常用属性

    属性 含义
    isChecked() 判断单选按钮是否选中
    setChecked() 设置选中状态

二、案例

  • 代码

    <!-- RadioGroup -->
    <RadioGroup
        android:id="@+id/radioGroup"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:checkedButton="@id/man">
        <!-- RadioButton -->
        <RadioButton
            android:id="@+id/man"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="男"
            android:textSize="16sp"/>
        <!-- RadioButton -->
        <RadioButton
            android:id="@+id/woman"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="女"
            android:textSize="16sp"/>
        <!-- RadioButton -->
        <RadioButton
            android:id="@+id/none"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="无"
            android:textSize="16sp"/>
    </RadioGroup>
    复制代码
  • 效果

    // 监听切换
    RadioGroup radioGroup = (RadioGroup) findViewById(R.id.radioGroup);
    radioGroup.setOnCheckedChangeListener((group, checkedID) -> {
        RadioButton btn = (RadioButton) findViewById(checkedID);
        Toast.makeText(getApplicationContext(), btn.getText(), Toast.LENGTH_LONG).show();
    });
    复制代码

    temp.gif

猜你喜欢

转载自juejin.im/post/7016893699128819719