这里有个问题,
我想找出用户选择的单选按钮,并与正确的比较。我有3个问题,答案在一个数组列表中。当我做一个日志来找出哪个被选中时,这是输出:
2020-11-30 23:12:19.128 5696-5696/com.example.test1 E/Question: Where is Iran ? Asia
2020-11-30 23:12:19.128 5696-5696/com.example.test1 E/Question: Where is Sweden ? Europe
2020-11-30 23:12:19.128 5696-5696/com.example.test1 E/Question: Where is Mexico ? Europe
第三个问题的答案未保存,第二个问题的答案将保存到第三个问题。请帮帮我。我该怎么办
这是我的问题代码:
QuestionModel q1 = new QuestionModel();
q1.setText("Where is Iran ?");
q1.setOp1("Asia");
q1.setOp2("Europe");
q1.setOp3("America");
q1.setOp4("Africa");
q1.setTrue_ans("Asia");
q1.setScore(5);
questions.add(q1);
QuestionModel q2 = new QuestionModel();
q2.setText("Where is Sweden ?");
q2.setOp1("America");
q2.setOp2("Africa");
q2.setOp3("Asia");
q2.setOp4("Europe");
q2.setTrue_ans("Europe");
q2.setScore(3);
questions.add(q2);
QuestionModel q3= new QuestionModel();
q3.setText("Where is Mexico ?");
q3.setOp1("Africa");
q3.setOp2("America");
q3.setOp3("Europe");
q3.setOp4("Asia");
q3.setTrue_ans("America");
q3.setScore(4);
questions.add(q3);
这是我如何通过用户访问所选单选按钮的:
if (radioGp.getCheckedRadioButtonId() != -1) {
QuestionModel model = questions.get(con);
int id = radioGp.getCheckedRadioButtonId();
RadioButton useranswer = findViewById(id);
model.setUser_ans(useranswer.getText().toString());
}
这是日志和其他东西:
if (con == 2) {
nextbtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
for (QuestionModel q : questions) {
Log.e("Question ", q.getText() + " " + q.getUser_ans());
String user_ans = q.getUser_ans();
String true_ans = q.getTrue_ans();
if( true_ans.equals(user_ans) ) {
score += q.getScore();
}
}
scorebox.setText(Integer.toString(score));
}
});
}
1条答案
按热度按时间iq0todco1#
为了尽可能简单,您可以依赖以下解决方案:
在oncreate内的mainactivity中: