私が持っているタイマーのonFinishメソッドでは、入力が乱数(LoadG1)に等しい場合、スコアにポイントを追加します。 IDEは私に配列を使用して、最終結果にスコアを付けることを望んでいます。私はエラーを取り除くために助言に従いましたが、私の目標を達成できませんでした。私は時間をかけてさまざまな方法でコードを作成しようとしました(たとえば、parseIntと==を使用していましたが、同じ出力を受け取りました)。私は期待していたものを得ず、代わりに「スコア:[l @ fea28db」を受け取る。ここでAndroidスタジオでのスコアカウンタのエラー
public void onFinish() {
number.setVisibility(View.GONE);
final TextView prompt = (TextView) findViewById(R.id.prompt);
prompt.setText(" Enter the number");
final EditText input = (EditText) findViewById(R.id.enterAnswer);
input.setVisibility(View.VISIBLE);
input.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (event.getAction() == KeyEvent.ACTION_DOWN){
switch (keyCode){
case KeyEvent.KEYCODE_ENTER:
Editable answer = input.getText();
input.setVisibility(View.GONE);
prompt.setVisibility(View.GONE);
if (answer.equals(loadG1)){
score[0]++;
}
return true;
default:
break;
}
}
return false;
}
});
}
はここでI出力スコア:私も、出力ではない差が、score=score+1
とscore+=1
をやってみました
public void onFinish() {
TextView result = (TextView) findViewById(R.id.outcome);
result.setText("Score: "+ score);
TextView prompt = (TextView) findViewById(R.id.prompt);
prompt.setVisibility(View.GONE);
}
。私は大いに助けていただければ幸いです。
これは、実際にはスコアを上げるためにparseInt(String.valueof)と==を使用する必要がありました。基本的には、ポイントを追加するためには両方を整数に変換する必要がありました。最後にアレイを戻すというあなたの提案は、奇妙な出力エラーを取り除き、私に0を与えました。応答に感謝します。 – User44