我想写一个智商测试应用程序。 我使用3个单选按钮作为答案,并使用一个按钮来表示下一个问题。 现在我想使用按钮而不是radiobutton。 我不知道在onclick()方法中该怎么做。 请帮帮我:)。
这是我的代码:
public void onclick(View view_obj) {
if (!radiobt_obj1.isChecked() && !radiobt_obj2.isChecked()
&& !radiobt_obj3.isChecked()) {
Toast.makeText(this, "Please Select", Toast.LENGTH_LONG).show();
} else {
estimation();
if (btn1.getText().toString().equals("Next")) {
if (!cursor_obj.isAfterLast()) {
number++;
txt_obj.setText(cursor_obj.getString(cursor_obj
.getColumnIndex("question")));
radiobt_obj1.setText(cursor_obj.getString(cursor_obj
.getColumnIndex("ans1")));
radiobt_obj2.setText(cursor_obj.getString(cursor_obj
.getColumnIndex("ans2")));
radiobt_obj3.setText(cursor_obj.getString(cursor_obj
.getColumnIndex("ans3")));
set_invis();
cursor_obj.moveToNext();
checked_buttons();
if (!cursor_obj.isAfterLast() && number <40) {
btn1.setText("Next");
} else {
btn1.setText("Result");
cursor_obj.close();
db.close();
}
}
} else {
Intent intent_obj = new Intent(AnxietyQuestion.this,AnxietyResult.class);
intent_obj.putExtra("value", result);
startActivity(intent_obj);
finish();
}
}
}
public void estimate(){
switch (number) {
case 1:
if (radiobt_obj1.isChecked()) {
result += 2;
}
if (radiobt_obj2.isChecked()) {
result += 0;
}
if (radiobt_obj3.isChecked()) {
result += 1;
}
break;
答案 0 :(得分:1)
:
<Button
...
android:onClick="onClickNext"
/>
Java中的
(...)
public void onClickNext(View v){
(...)
}
此外,您可以在您希望的每个onClick
上附加不同的View
- 侦听器,但首先尝试通过XML来了解它。但是,不要只使用一个onClick
方法,它会让你发疯。