【问题标题】:Reusing Activity and buttons for Quiz Application in Android在 Android 中重用测验应用程序的 Activity 和按钮
【发布时间】:2026-02-13 08:05:02
【问题描述】:

我正在制作一个小测验应用程序,作为更大应用程序的一部分。我有大约 18 个问题,我不想为每个问题做一个新的活动。每次单击按钮时如何更改按钮实现。假设问题 1 我给出答案 A,问题 2 的问题和按钮应该改变。

谢谢,

【问题讨论】:

  • 向我们展示您为实现这一目标所做的工作
  • @Varun 如果您不想打开另一个活动,也可以使用视图寻呼机
  • 您可以创建一种常用方法来显示问题,跟踪当前问题编号并单击按钮加载下一个问题

标签: android android-activity android-button


【解决方案1】:

在 Shared Preference 上为要问的问题设置一个 int

SharedPreferences preferences = getSharedPreferences("QUIZ", MODE_PRIVATE);
SharedPreferences.Editor editor = preferences.edit();
editor.putInt("question_no",1);
editor.apply();

然后点击按钮

button.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        int q_no = preferences.getInt("question_no",1);
        switch (q_no){
            case 1:
                textView.setText("Question 1:");
                break;
            case 2:
                textView.setText("Question 2:");
                break;
            case 3:
                textView.setText("Question 3:");
                break;
            ...
            default:
                /*End all question*/
        }

        editor.putInt("question_no",q_no+1);
        editor.apply();
    }
});

【讨论】:

  • 这仅适用于一个实例,对吗?我希望它适用于所有 18 个问题。我正在考虑使用 switch 语句和计数变量
  • 让我试试这个。谢谢!
  • 嘿!这解决了我的问题!谢谢。虽然,当我转到下一个问题时,我的单选按钮在上一个答案中仍然处于选中状态。我尝试使用 setChecked(false) 但我无法选择该选项
最近更新 更多