作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试对单选按钮组运行“存在检查”,以确定如果在组中选择了 2 个单选按钮中的 1 个(if 语句),如果选择了 2 个单选按钮中的另一个(否则 if语句)或者如果两者都没有选择(else 语句)。其代码如下:
if (rdbAM.isSelected()) {
strTime = rdbAM.getText().toString();
} else if(rdbPM.isSelected()){
strTime = rdbPM.getText().toString();
} else {
AlertDialog.Builder WrongDateFormat = new AlertDialog.Builder(this);
WrongDateFormat.setMessage("Please Select AM or PM");
WrongDateFormat.setNeutralButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int id) {
dialog.cancel();
}
});
AlertDialog alertWrongDateFormat = WrongDateFormat.create();
alertWrongDateFormat.show();
return;
}
所以基本上,这应该做的是,将名为“strTime”的变量设置为单选组中所选单选按钮的文本是什么,或者如果两者都没有选择,则显示错误消息。相反,无论是否选择单选按钮,它总是显示此错误消息:
(如上所示,选择了“AM”单选按钮,但仍显示错误)。
任何有关原因的建议将不胜感激。请注意,我对 Android 开发还比较陌生,所以如果这显然是显而易见的事情,那么我深表歉意,但几天来我一直在努力解决这个问题!如果您想查看任何进一步的代码,请告诉我,我很乐意提供它,但我会尽力将其保持私密,因此如果没有必要,不想在初始帖子中发布所有内容。提前致谢。
最佳答案
根据文档 RadioButton扩展 CompoundButton提供方法 isChecked() 。然而,与方法 isSelected() 的区别描述很少。来自扩展类View这可能会令人困惑。
执行以下操作,它应该可以工作:
rdbAM.isChecked();
关于java - If...Else 语句总是转向 "else"。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44909069/
我是一名优秀的程序员,十分优秀!