2017-07-27 9 views
-1

自分自身を呼び出してタイマーを含むアクティビティを起動していますが、アクティビティを開始したいのですが、問題はタイマーがすべてのインスタンスで同時に終了することですそのアクティビティが呼び出され、結果として、そのすべてのインスタンスで2番目のアクティビティが呼び出されます。これを避ける方法。コードはfollows-の通りです:タイマーの終了後にアクティビティが何度も呼び出される

 public void onFinish() { 
         Intent intent = new Intent(Exam.this, ScoreCard.class); 
         intent.putExtra("scoreTillNow", scoreTillNow); 
         intent.putExtra("timeLeft", timeLeft); 
         intent.putExtra("reward", reward); 
         intent.putExtra("punishment", punishment); 
         intent.putExtra("totalTime", totalTime); 
         startActivity(intent); 
         finish(); 
        } 
+0

ここで、タイマーコードはありますか? – k0sh

答えて

0

Decalareあなたのタイマー活動以外の活動でのpublic static boolean型変数と、それは偽のように初期化します。タイマーがあることを満了したときに

public static boolean timerExpired = false; 

は今、この変数をチェックfalseの場合、2番目のアクティビティを呼び出し、変数をtrueに更新します。 variableがtrueの場合は何もしないでください。

0

あなたのアクティビティにはManifestlaunchModesingleTaskまたはsingleInstanceを使用できます。
タイマーのコードを入力してください。

関連する問題