永发信息网

android中的radiobutton要点击2下才能选中

答案:7  悬赏:60  手机版
解决时间 2021-01-29 19:08
android中的radiobutton要点击2下才能选中
最佳答案
android 中的radiobutton点击2下才能选中的原因,因为一开始都有一个默认选中的item,类似于下面的代码:


for (int j = 0; j < newList.get(position).getList().size(); j++) {
RadioButton radioButton = new RadioButton(context);
radioButton.setTextSize(9);  
radioButton.setText(newList.get(position).getList().get(j)
.get("dishname").toString());
radioButton.setTag(newList.get(position).getList().get(j)
.get("dishid").toString());
radioGroup.addView(radioButton, j);

if (j==0) {
radioButton.setCheck(true); 
}  
}就是中给radioButton设置为选中,这样如果存在两个radiogroup就会出现点击两次才能选中的状态原因是:不需要设置RadioButton的默认选中, 这样会使RadioButton一直处于选中状态. 
解决的方式:
应该给RadioGroup 设置选中的RadioButton   ,也就是说    
把  if (j==0) {
 radioButton.setCheck(true); 
}  
更改为
 if (j==0) {
radioGroup.check(radioButton.getId()); 
}  



遇到很多棘手的问题,建议查看api和接口方法的使用说明,很多官方的英文详细的列举了可能发生的问题。
全部回答
你说的这种情况不太可能发生,分析一下 估计是你是用代码控制选中状态的吧,检查下代码逻辑是否有问题
点击1下就可以,点击2下可能是你没点好。
Windows 窗体 RadioButton 控件为用户提供由两个或多个互斥选项组成的选项集。android中的RadioButton 也是一个意识,只不过需要使用一个RadioGroup包含起来,代表一组。
Android是基于Linux内核开发的操作系统。主要面向手机及手持移动设备。
单击即指点中或触碰某程序或软件,单击后将会触发该程序运行。
而长按软件可以实现选中,单出可以选择的菜单。
对文件或者程序进行操作,例如:移动、删除、拖拽等····
切换到哪一个的时候设置((RadioButton) findViewById(R.id.radiobutton)).setChecked(true);你试试看,或者判断一下
switch (radiogroup.getCheckedRadioButtonId()){
case R.id.radio1:
if (radioButton1.isChecked())
radioGroup2.clearCheck();
break;
case R.id.radio2:
if (radioButton2.isChecked())
radioGroup1.clearCheck();
break;
}
切换到哪一个的时候设置((RadioButton) findViewById(R.id.radiobutton)).setChecked(true);你试试看,或者判断一下
switch (radiogroup.getCheckedRadioButtonId()){
case R.id.radio1:
if (radioButton1.isChecked())
radioGroup2.clearCheck();
break;
case R.id.radio2:
if (radioButton2.isChecked())
radioGroup1.clearCheck();
break;
切换到哪一个的时候设置((RadioButton) findViewById(R.id.radiobutton)).setChecked(true);你试试看,或者判断一下
switch (radiogroup.getCheckedRadioButtonId()){
case R.id.radio1:
if (radioButton1.isChecked())
radioGroup2.clearCheck();
break;
case R.id.radio2:
if (radioButton2.isChecked())
radioGroup1.clearCheck();
break;
}追问试过了,没有用。。追答我也在做那个,没有出现你说的问题,你可以把代码贴出来追问
试过了,没有用。。
关键是点击radiobutton他没有check,只是press了,点击第2下才check,我就算每一个button都设置clickListener也是点击第2下才会触发Listener
 
追答
你是想两个按钮切换的时候执行不同的操作?那两个按钮是不需要加监听的,我写了个demo,你可以参考下
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
连云港赣榆国际大酒店地址有知道的么?有点事
中通民乐分公司地址在什么地方,我要处理点事
星翼酒店(连云港海昌路步行街店)地址在什么
俗话拉经济什么意思
在雅典民主政治的“黄金时代”,一个雅典公民
打LOL怎么玩老外服,我在国外玩中国服250MS左
棉籽绒的意思是什么啊?知道的请说下!
2000年帕萨特诊断插头在哪?
有谁能把金庸武侠小说作品及其创作年份给小弟
圆通快递(民乐县)地址在什么地方,我要处理点
有关“木桶效应”,说法正确的是BA. 木桶容纳
我不知道快递单号和名称怎么办?
连云港东海名郡大酒店地址好找么,我有些事要
民乐全峰快递地址有知道的么?有点事想过去
霸道2700加装在电瓶上的脉冲增加动力有明显效
推荐资讯
广场招待所(连云港东海)地址有知道的么?有点
代开3%发票和自开有什么区别
蹂轹的意思是什么啊?知道的请说下!
【高加索人】高加索人种(白种人)一般有很高的
—What does this sentence mean ? --- It se
辽宁警察学院学费多少
涩谷109b002指爱你二楼电梯左边地址好找么,
(20分)程序启动必须现在服务里找到程序启用
最近买了件艾格的羊毛大衣,说明不能水洗,洗
2012年7月,中国人民银行()利率浮动区间,贷
从宜宾菜坝机场到南岸汽车站打的多少钱
丙申年甲午月甲申日甲子时有富贵命吗
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?