android如何实现代码控制RadioGroup中某一个按钮选中

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android如何实现代码控制RadioGroup中某一个按钮选中相关的知识,希望对你有一定的参考价值。

参考技术A RadioButton在做表单的时候经常用到,在安卓开发中,RadioButton需要和RadioGroup一起使用,表示在一组可选项中,只有一
个可以被选中,RadioGroup状态改变的一个监视器OnCheckedChangeListener,RadioGroup使用的时候调用
setOnCheckedChangeListener(),然后重写OnCheckedChangeListener中的
onCheckedChanged()方法,比如:
radioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener()
@Override
public void onCheckedChanged(RadioGroup group, int checkedId)
// 获取变更后的选项的ID
int radioButtonId = group.getCheckedRadioButtonId();
switch (radioButtonId)
case R.id.message_radiobtn:
mFragment = new MessageFragment();
break;
case R.id.contact_radiobtn:
mFragment = new ContactFragment();
break;
case R.id.dynamic_radiobtn:
mFragment = new DynamicFragment();
break;
default:
break;

getActivity().getSupportFragmentManager().beginTransaction()
.replace(R.id.realtabcontent, mFragment).commit();

);这篇简单写了一个几行代码介绍,实现的效果有点类似QQ底部导航切换,Teachcourse博客:

如何将RadioGroup元素的ID转换为Android studio中的字符串?

下面的代码显示了吐司中的RadioButton的id以及按钮中的名称,但我想将其转换为字符串。

  radioGroup = (RadioGroup) findViewById(R.id.radioGroup);

    radioGroup.clearCheck();

    radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
        @Override
        public void onCheckedChanged(RadioGroup group, int checkedId) {
            RadioButton rb = (RadioButton) group.findViewById(checkedId);
            if (null != rb && checkedId > -1) {

                Toast.makeText(activity.this, rb.getText(), Toast.LENGTH_SHORT).show();
           p1_button.setText(rb.getText());


            }

        }
    });

我想将单选按钮的值作为字符串。

答案

这很容易,如果你想将值转换为字符串,你可以像这样使用toString()方法

rb.getText().toString();

而且你也可以像这样使用String.valueOf()方法

String.valueOf(rb.getText);

所以在你的情况下

 p1_button.setText(rb.getText().toString());
另一答案

实际上rb.getText()返回一个字符串。您可以将其值分配给字符串变量,如

String str=rb.getText();

为了更安全的一面:

String str=""+rb.getText();

在上面的行中,来自rb.getText()的值与“”连接(+用于连接字符串)。使用“”+将+的RHS上的任何值转换为字符串

要么

String str=rb.getText().toString();

现在'str'包含您要求的字符串值

以上是关于android如何实现代码控制RadioGroup中某一个按钮选中的主要内容,如果未能解决你的问题,请参考以下文章

如何实现代码控制RadioGroup中某一个按钮选中

android 中如何获取radiogroup 中那个radiobutton被选择

Android:RadioGroup - 如何配置事件监听器

如何将RadioGroup元素的ID转换为Android studio中的字符串?

Android基本控件之RadioGroup

android 中RadioGroup怎么实现横排按钮