2017-12-20 3 views
0

のタイプであれば、私は、私はいつも、私はIntent.FLAG_ACTIVITY_SINGLE_TOPBackstack - 活動は何か

を使用することはできません1の起動時に活動を再作成する必要がある状況を、持っているポップするbackstackに見て、あれば、最後の飛び出しする方法はありますそれは同じ活動ですか?

Intent.FLAG_ACTIVITY_SINGLE_TOPを使用して方法を見つけ、onNewIntentメソッドを上書きしました。

@Override 
    protected void onNewIntent(Intent intent) { 
     finish(); 
     intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
     startActivity(intent); 
    } 

これはうまくいきますが、これを達成するためのより良い方法があるのだろうかと思います。

+0

あなたは断片を使用すると考えましたか?あなたはそれらをバックスタックに置き、あなたが望むように取り出すことができます。 –

+0

これはあなたが探しているものですhttps://developer.android.com/reference/android/content/Intent.html#FLAG_ACTIVITY_CLEAR_TOP –

+0

@SaranSankaranああ、私の場合はSINGLE_TOPと同じ動作をしていると思っていましたが、ドキュメントをもっと慎重に読んでください、そして、それは私の問題を解決してくれます。 – Sparrow318

答えて

0

お探しのものはFLAG_ACTIVITY_CLEAR_TOPです。それについての詳細を読むhere