1

私は単純な Android アプリを作成しています。アクティビティ間のナビゲーション/関係をより適切に制御したいと考えています。アクティビティを Android アクティビティのように動作させたくありません...タスク内でスタックさせたくありません。1つ( MainActivityActivityと呼びましょう)を着陸点にして常にスタックの一番下に置き、2番目のアクティビティ(SecondActivityと呼びます)のインスタンスを1つだけスタック内でその上に置きたい...再利用もいいですね。MainActivityを「メイン」にして、両方を次のように宣言することで、この動作を得ることができると思いました。ActivitylaunchMode=singleTop. これはまったく機能していません。メニューを使用してそれらの間のナビゲーションを提供するので、何度も行ったり来たりしてアプリから戻るときは、スタック全体を調べます。

タスクのActivityスタックを細かく制御するにはどうすればよいですか? MainActivityは常にアプリから戻り、SecondActivityは常にMainActivityの 1 つのインスタンスに戻ります。同様に、singleTop を機能させたいのでonNewIntent、毎回作成および破棄する代わりに使用します。マニフェストとインテント フラグを使用しても機能しません。何か案は?

4

1 に答える 1

2

「startActivity()」呼び出しの後に別のアクティビティを呼び出しているアクティビティ内で、いつでも「finish()」を呼び出すことができます。アプリ全体を 2 つのアクティビティ クラスに詰め込み、それらが何をしているかに基づいてビューを交換しようとすることは絶対にお勧めしません。それほど重要な場合は、新しいアクティビティを起動するときにアクティビティを閉じてください (明らかに MainActivity ではありません)。

于 2009-11-15T04:03:35.823 に答える