我有一個測驗應用程序,其中有一個定時器整個遊戲活動在哪裏你應該回答儘可能多的問題,你可以在指定的分鐘內..完成後仍然繼續活動();
分配後的分鐘結束後,它會帶你到結果活動它顯示你的分數。在回按時,我創建了一個警告對話框,詢問您是否要返回主菜單。如果點擊是,頁面應該回到主菜單並停止/殺死遊戲活動。
然而,當我點擊「是」,就返回到主菜單,但同時你還是任何地方應用,結果仍然會從以前的gameactivity我有顯示。也許我說好的真的完成了gameactivity ..這裏是我的活動計時器和背壓片段:
new CountDownTimer(seconds, 1000) {
public void onTick(long millisUntilFinished) {
timer.setText("Seconds left: " + millisUntilFinished/1000);
}
public void onFinish() {
Intent intent = new Intent(GameActivityAddition.this, Score.class);
intent.putExtra("totalscore", score);
intent.putExtra("numberquestions", rowId);
intent.putExtra("d", difficulty);
db.close();
startActivity(intent);
}
}.start();
@Override
public void onBackPressed() {
AlertDialog.Builder abuilder = new Builder(GameActivityAddition.this);
abuilder.setMessage("Return to Main Menu?");
abuilder.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
Intent main = new Intent(GameActivityAddition.this, Main.class);
startActivity(main);
finish();
}
});
abuilder.setNegativeButton("No", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
AlertDialog alert = abuilder.create();
alert.show();
}
可能是你已經在你的結果活動設置的數據不被清除,當你玩完活動,令你看到舊的數據,當您再次訪問活動。 – Hiral
你不停止倒計時。 – user996428
我猜,只是猜測,倒數計時器就像一個線程,當你調用完成其仍將被運行()。嘗試在計時器中添加一個布爾變量來控制其運行。 – Huang