0

アクティビティがスタックに既に存在するかどうかをプログラムで確認し、再作成する代わりに再利用する方法はありますか?

ユーザーが複数のルートを介してアクティビティに入り、複数のルートを介して先に進むことができる状況が発生します。ただし、他のアクティビティを数回クリックすると、同じアクティビティに再びアクセスできます。スタックに既に存在することがわかっているときに、アプリが新しいアクティビティを作成するのを避けたいです。

これは私の設計が悪いだけかもしれません (これは私の最初のアプリです)。しかし、これをどのように管理できるのか疑問に思っていましたか? これに対する解決策はありますか?

4

2 に答える 2

1

すべてのアクティビティがスタックに保存されていると考えてください。たとえば、メイン アクティビティを配置してからセカンド アクティビティを呼び出した場合、その 2 番目のアクティビティが終了するとメインが前面に配置されます。したがって、アクティビティの場所がわかっている場合は、はい、それを再利用できます;)

役に立つことを願っています:)

于 2012-05-02T16:29:09.287 に答える
1

Well this kind of freeform activity access is a bit frowned on in the android UI guidelines, but you can use the FLAG_ACTIVITY_REORDER_TO_FRONT in your Intent to reshuffle your activity to the front.

Alternately, you can also use FLAG_ACTIVITY_CLEAR_TOP to clear the stack on top of your activity.

于 2012-05-02T16:28:16.360 に答える