一、单选框(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; } }
待续。。。