我想做Android App测验。我做了一个带有4个radiobutton的放射性组,代表了4个答案。 我希望当没有点击这些单选按钮时,应用程序显示错误,但我没有这样做。 这是我的代码:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.fragment_main);
RadioGroup champ=(RadioGroup)findViewById(R.id.answer1);
champ.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@SuppressWarnings("null")
public void onCheckedChanged(RadioGroup group, int checkedId) {
// TODO Auto-generated method stub
switch(checkedId) {
case R.id.answer1A:
ans1 =0;
break;
case R.id.answer1B:
ans1 =1;
break;
case R.id.answer1C:
ans1 =2;
break;
case R.id.answer1D:
ans1 =3;
break;
case R.id.answer1E:
ans1 =4;
break;
default:
ans1=(Integer) null;
Toast.makeText(MainActivity.this, "error", Toast.LENGTH_LONG).show();
break;
}
}
});
为什么?拜托,你能帮助我吗?
答案 0 :(得分:0)
首先分配:
ans1=-1; //in onCreate or at the time of declaration
您可能正在点击某个按钮或某些内容,您将访问哪个答案已被选中,您可以在那里查看:
if(ans1==-1)
{
//show error message
}
else
{
//Success
}
答案 1 :(得分:0)
此检查未执行,因为这是一个checkedchangelistener,当您单击某些单选按钮时(当状态更改时)将触发该检查。
您需要做的就是检查听众外部每个无线电按钮的状态。