RadioGroup中RadioButton默认选中问题

举报
再见孙悟空_ 发表于 2022/01/14 22:56:06 2022/01/14
【摘要】 当一个RadioGroup(其实只要在同一个父布局)中有若干个RadioButton时,RadioButton之间存在着互斥关系, 也就是说只能选中一个RadioButton。但是如果我们需要默认选中某个RadioButton该如何处理呢?  很简单,我们一般情况下会觉得很简单,假如我们需要设置第一个位置的radiob...

当一个RadioGroup(其实只要在同一个父布局)中有若干个RadioButton时,RadioButton之间存在着互斥关系,

也就是说只能选中一个RadioButton。但是如果我们需要默认选中某个RadioButton该如何处理呢? 

很简单,我们一般情况下会觉得很简单,假如我们需要设置第一个位置的radiobutton默认选中,直接会写到


  
  1. for (int i = 0; i < 3; i++) {
  2. RadioButton radioButton = new RadioButton(this);
  3. if(i == 0){
  4. radioButton.setChecked(true);
  5. }
  6. }

然后我们运行发现,没有问题,默认选中了。就这么简单..但是你点一下其他的就会发现,wtf...点击其他的,这个默认选中的不会被取消掉啊....

解决办法:

就是new radiobutton 的时候  给radiobutton设置一个id,如下:


  
  1. for (int i = 0; i < 8; i++) {
  2. RadioButton radioButton = new RadioButton(this);
  3. radioButton.setText(i + "");
  4. radioButton.setId(i);
  5. radioGroup.addView(radioButton, LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);
  6. }
  7. //默认选中第一个按钮
  8. radioGroup.check(0);

然后运行,发现完美解决。

倘若业务需要修改,查看 ,删除的各种业务逻辑的情况的时候  参考我下面的代码设置


  
  1. for (int j = 0; j < dicBeans.size(); j++) {
  2. RadioButton radioButton = new RadioButton(context);
  3. LayoutParams params = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
  4. radioButton.setText(dicBeans.get(j).getDicName());
  5. radioButton.setTag(formDetail.getTableDetailID());
  6. radioButton.setId(j);
  7. rgTypeEight.addView(radioButton, params);
  8. if (mIntentFrom == FLAG_SHOW ) {//查看
  9. radioButton.setEnabled(false);
  10. if(dicBeans.get(j).getDicName().equals(formDetail.getuValue())){
  11. rgTypeEight.check(j);
  12. }
  13. } else if(mIntentFrom == FLAG_UPDATE ){//修改
  14. radioButton.setEnabled(true);
  15. if(dicBeans.get(j).getDicName().equals(formDetail.getuValue())){
  16. rgTypeEight.check(j);
  17. }
  18. } else {//添加
  19. rgTypeEight.check(0);
  20. radioButton.setEnabled(true);
  21. }
  22. }

如果还有其他问题,请加我的qq群:开发一群:454430053 开发二群:537532956 开发一群:454430053 开发二群:537532956 
 

文章来源: wukong.blog.csdn.net,作者:再见孙悟空_,版权归原作者所有,如需转载,请联系作者。

原文链接:wukong.blog.csdn.net/article/details/73920303

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。