首页 > 解决方案 > 向警报对话框添加正确答案

问题描述

请帮忙。如果我在 "builder.setMessage("Answer : " + rightAnswers);" 中键入 "rightAnswers",我想在警报对话框中显示正确答案 警报显示“答案:1”。数字 1 而不是正确答案。请教我放什么才能显示正确答案。太感谢了。

public class thisactivity extends AppCompatActivity {
Button choice1,choice2;
ImageView images;
List<Model> list;
int turn = 1;
int rightAnswers = 0;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_thisactivity);


    images = (ImageView) findViewById(R.id.images);
    choice1 = (Button) findViewById(R.id.choice1);
    choice2 = (Button) findViewById(R.id.choice2);
    list = new ArrayList<>();
    for (int i = 0; i < new Signsdatabase().answers.length; i++) {
        list.add(new Model(new Signsdatabase().answers[i], new 
         Signsdatabase().signs[i]));
    }

    newQuestion(turn);

    choice1.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            String alertTitle;              
   if(choice1.getText().toString().equalsIgnoreCase(list.get(turn - 
    1).getName())) {
                rightAnswers = rightAnswers + 1;
                alertTitle = "Correct!";
                if (turn < list.size()) {
                    turn++;
                    newQuestion(turn);
                } else {
                    Toast.makeText(thisactivity.this, "You have completed the Quiz!", Toast.LENGTH_SHORT).show();

                }
            }
            AlertDialog.Builder builder = new 
           AlertDialog.Builder(thisactivity.this)
            builder.setTitle(alertTitle);
            builder.setMessage("Answer : " + **CORRECT ANSWERS**); <---I WANT TO DISPLAY THE CORRECT ANSWER HERE BUT I DO NOT KNOW HOW------->
            builder.setIcon(R.drawable.pic);
            builder.setPositiveButton("OK", new 
            DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int i) {
                }
            });
        }
    });
    choice2.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            if (choice2.getText().toString().equalsIgnoreCase(list.get(turn - 1).getName())) {
                rightAnswers = rightAnswers + 1;
                    if (turn < list.size()) {
                    turn++;
                    newQuestion(turn);
                } else {
                    Toast.makeText(thisactivity.this, "You have completed the Quiz!", Toast.LENGTH_SHORT).show();
                    getResults();
                }
            } else {


            }
            AlertDialog.Builder builder = new 
           AlertDialog.Builder(Roadsigns.this)
            builder.setTitle(alertTitle);
            builder.setMessage("Answer : " + **CORRECT ANSWERS**); <---I WANT TO DISPLAY THE CORRECT ANSWER HERE BUT I DO NOT KNOW HOW------->
            builder.setIcon(R.drawable.pic);
            builder.setPositiveButton("OK", new 
            DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int i) {
                }
            });
            builder.setCancelable(false);
            builder.show();

        }
    });
}
  ............

这是我的标志数据库

public class Signsdatabase {

Integer[] signs ={
        R.drawable.q1,
        R.drawable.q2,
        R.drawable.q3,
        };
 String[] answers = {
        "Ans1",
        "Ans2",
        "Ans3",
   };
}

标签: javaandroidandroid-alertdialog

解决方案


在更改对话框中进行此更改。

制作 Signsdatabase 对象或在答案数组中制作静态。

  builder.setMessage("Answer : " + Signsdatabase.answers[rightAnswers]);

推荐阅读