はい、私は他の質問を見て、私はそれらを読んだと私はそれを理解しようとしましたが、私はそれが私のシナリオで動作するように苦労していると思う。JavaのAndroidは、内部クラスの中で非最終的な答えを参照
Random rand = new Random();
int randNumber;
long chosenNumber;
String answer;
while (questionCount < 3) {
//---get all titles---
db.open();
Cursor c = db.getAllTitles();
if (c.moveToFirst())
{
do {
DisplayTitle(c);
} while (c.moveToNext());
}
db.close();
//---pick a question---
db.open();
randNumber = rand.nextInt(3);
chosenNumber = (long) randNumber;
String questionPrompt = db.pickQuestion(chosenNumber);
while (questionPrompt == null)
{
randNumber = rand.nextInt(3);
chosenNumber = (long) randNumber;
questionPrompt = db.pickQuestion(chosenNumber);
}
answer = db.pickQuestion(chosenNumber);
question.setText(questionPrompt);
db.close();
btnclickme.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
String str = txtname.getText().toString();
if (str.equalsIgnoreCase(answer)) {
Toast.makeText(getBaseContext(), "That is correct!", Toast.LENGTH_SHORT).show();
}
else
Toast.makeText(getBaseContext(), "That is incorrect, try again.", Toast.LENGTH_SHORT).show();
}
});
私は、私は、ユーザーからのテキストが文字列の答えに等しいかどうかを確認しようとしていたときにエラーが何であれ...非final変数answerを参照することはできません取得します。私の質問は、どのように私は答えを編集することができるように私はそれを作る(私はループの中にこれを入れ、何度も答えを変えるというように異なる質問を呼ぶつもりだから)それは次の質問のために変わらない。すべての質問に対して変数を作成する必要がありますか?助けて!
私はあなたがメソッドローカルの代わりにメンバ変数にしたいと思います。 –
私はそれを最終的にすることはできません、私は答えの変数を変更する計画があります。これは私のアプリケーションでは1つの質問のためだけですが、私はこれを(正確にはまだわかりません)周りにいくつかのループを入れて、データベースから質問を継続的に呼び出し、questionPromptとanswer変数を次の質問に変更します。 – LiverpoolFTW