Android其他组件(单选框)

一、单选框(RadioGroup)

单选框(RadioGroup)需要配合单选按钮(RadioButton)使用,同一个单选框中的单选按钮只能被选中一个,默认是一个都不选中。

RadioGroup的常见属性(在XML中配置)和方法(在Java代码中使用)包括:

如果需要获取被选中的按钮的文本内容,可以在setOnCheckedChangeLinstener()方法中如下获取:

@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
    RadioButton button = findViewById(group.getCheckedRadioButtonId());
    Toast.makeText(MainActivity.this,  button.getText() + "被选中", Toast.LENGTH_SHORT).show();
}

如果要在没有改变的情况下获取当前被选中按钮的文本内容,也可以使用类似的代码,但是需要判断button是否为null,否则程序会退出。

radioGroup.clearCheck();
RadioButton button = findViewById(radioGroup.getCheckedRadioButtonId());
if(button != null){
    Toast.makeText(MainActivity.this,  button.getText() + "被选中",
            Toast.LENGTH_SHORT).show();
}else{
    Toast.makeText(MainActivity.this,  "没有按钮被选中", Toast.LENGTH_SHORT).show();
}

当然,onCheckedChanged()方法中更多的是使用switch方法:

@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
    switch (checkedId) {
        case R.id.radio_man:
            Toast.makeText(MainActivity.this, "您选择了男性", Toast.LENGTH_SHORT).show();
            break;
        case R.id.radio_women:
            Toast.makeText(MainActivity.this, "您选择了女性", Toast.LENGTH_SHORT).show();
            break;
    }
}

待续。。。

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-14 22:18:04       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-14 22:18:04       106 阅读
  3. 在Django里面运行非项目文件

    2023-12-14 22:18:04       87 阅读
  4. Python语言-面向对象

    2023-12-14 22:18:04       96 阅读

热门阅读

  1. zk_dubbo

    zk_dubbo

    2023-12-14 22:18:04      63 阅读
  2. (第17天)RMAN 冷备异机恢复 Oracle 数据库

    2023-12-14 22:18:04       57 阅读
  3. Oracle 慢查询排查步骤

    2023-12-14 22:18:04       49 阅读
  4. Etcd实战(一)-部署etcd集群

    2023-12-14 22:18:04       51 阅读
  5. Vue项目中WebSocket封装

    2023-12-14 22:18:04       60 阅读