首页 > 解决方案 > 如果 EditText 值为 true,如何将 1 添加到分数

问题描述

大家好,所以我正在编写一个测验应用程序,分数是基于用户选择的。我使用单选按钮、复选框和编辑文本标签来回答问题。当用户单击单选按钮或复选框时,分数会更新,但当用户在 EditText 字段中输入正确的文本时,分数不会更新。我使用 if else 语句来检查输入的字符串是否与答案匹配。

    public void startFinalScreen(View v) {

    EditText text = (EditText) findViewById(R.id.edit_text_view_answer);
    int questionNineScore = getIntent().getIntExtra("GNS", 0);
    int finalScore = questionNineScore;
    String answer = "William Shakespeare";
    if (text.getText().toString() == answer) {
        qNineScore = qNineScore + 1;
    }
    finalScore = qNineScore;
    }

我曾经.getIntent()从以前的活动中获得分数。在我这样做之后,即使在输入正确答案后,分数也不会增加 +1。

标签: javaandroid

解决方案


代替

text.getText().toString() == answer

利用

if (text.getText().toString().equals(answer)) {
    qNineScore = qNineScore + 1;
}

推荐阅读