android中的radiobutton要点击2下才能选中
答案:7 悬赏:60 手机版
解决时间 2021-01-29 19:08
- 提问者网友:抽煙菂渘情少年
- 2021-01-29 16:18
android中的radiobutton要点击2下才能选中
最佳答案
- 五星知识达人网友:撞了怀
- 2021-01-29 17:02
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和接口方法的使用说明,很多官方的英文详细的列举了可能发生的问题。
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楼网友:北城痞子
- 2021-01-29 20:52
你说的这种情况不太可能发生,分析一下 估计是你是用代码控制选中状态的吧,检查下代码逻辑是否有问题
- 2楼网友:狂恋
- 2021-01-29 20:31
点击1下就可以,点击2下可能是你没点好。
Windows 窗体 RadioButton 控件为用户提供由两个或多个互斥选项组成的选项集。android中的RadioButton 也是一个意识,只不过需要使用一个RadioGroup包含起来,代表一组。
Windows 窗体 RadioButton 控件为用户提供由两个或多个互斥选项组成的选项集。android中的RadioButton 也是一个意识,只不过需要使用一个RadioGroup包含起来,代表一组。
- 3楼网友:野味小生
- 2021-01-29 18:59
Android是基于Linux内核开发的操作系统。主要面向手机及手持移动设备。
单击即指点中或触碰某程序或软件,单击后将会触发该程序运行。
而长按软件可以实现选中,单出可以选择的菜单。
对文件或者程序进行操作,例如:移动、删除、拖拽等····
单击即指点中或触碰某程序或软件,单击后将会触发该程序运行。
而长按软件可以实现选中,单出可以选择的菜单。
对文件或者程序进行操作,例如:移动、删除、拖拽等····
- 4楼网友:長槍戰八方
- 2021-01-29 18:30
切换到哪一个的时候设置((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;
}
switch (radiogroup.getCheckedRadioButtonId()){
case R.id.radio1:
if (radioButton1.isChecked())
radioGroup2.clearCheck();
break;
case R.id.radio2:
if (radioButton2.isChecked())
radioGroup1.clearCheck();
break;
}
- 5楼网友:患得患失的劫
- 2021-01-29 17:32
切换到哪一个的时候设置((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;
switch (radiogroup.getCheckedRadioButtonId()){
case R.id.radio1:
if (radioButton1.isChecked())
radioGroup2.clearCheck();
break;
case R.id.radio2:
if (radioButton2.isChecked())
radioGroup1.clearCheck();
break;
- 6楼网友:过活
- 2021-01-29 17:26
切换到哪一个的时候设置((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,你可以参考下
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,你可以参考下
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯