2

ホーム画面に、基本設定アクティビティを起動するボタンを含むアプリウィジェットがあります。

ユーザーが[戻る]ボタンを押すと、メインアプリケーションのスタックにいくつかのアクティビティがある場合、戻ると、ホームページに戻るのではなく、アプリで最後に表示されたアクティビティに移動します。私は自分の意図のために次のフラグを試しました:

settingsIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

settingsIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_TASK_ON_HOME);

settingsIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

しかし、運が悪い。これを行うために使用できるフラグまたはフラグの組み合わせはありますか?ありがとう。

4

2 に答える 2

1

次に試す

settingsIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); settingsIntent.addFlags(Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);

このフラグは、新しいタスクでアクティビティを実行し、終了後に履歴に追加しません。したがって、設定アクティビティはメインアプリと交差しません

于 2012-11-09T23:16:39.697 に答える
1

次のことを行う必要があります。

intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

現在、正しく機能するためにこれらのフラグの両方が必要な場合に、以前に設定したフラグをオーバーライドする setFlags を使用しています。

これについてはhttp://developer.android.com/reference/android/content/Intent.html#FLAG_ACTIVITY_CLEAR_TOPで読むことができます

于 2012-11-09T23:09:31.250 に答える