0

[警告:この質問にはコードが含まれていないため、面白くないかもしれません。]

アプリには次の構造があります (基本的に 3 レベルのアクティビティ: ホーム -> カテゴリ -> アイテム)。

--- Home Activity (TabHost)
------- Tab1: category 1 activity, contains item list, 
              onclick item will start "viewItemActivity" to view an item
------- Tab2: category 2 (as above)
------- Tab3: category 3 (as above)

プッシュ通知を受信すると、通知メッセージをクリックすると、viewItem アクティビティが単独で開始されます。デフォルトでは、ユーザーが電話で「Return」キーを押すと、この viewItem アクティビティが終了し、ユーザーは電話のホーム画面に戻ります。

電話のホーム画面に戻る代わりに、対応するカテゴリ タブを使用してユーザーをホーム アクティビティに転送する方法はありますか?

一般的な方法/アイデアをいただければ幸いです。

viewItem アクティビティ内のライフサークル/メソッドのどの部分を上書きする必要があるのか​​ わかりません。また、アプリの起動プロセス/スタックへのランダムな影響を回避するための記述方法。

この上書きされたメソッド (onStop!?) については、ホーム タブのアクティビティが実行されているかどうかを確認し、そうでない場合は開始し、対応するタブを表示するインテントを渡すことを考えていましたが、これは適切な方法ですか?)

どうもありがとう!

4

2 に答える 2

1

各アクティビティを上書きonBackPressed()して、そこからホーム アクティビティを開始します。Tab1 アクティビティがスタックに残らないようにするには、MANIFEST ファイルを介して履歴がないように定義します。

 <activity android:name=".activity...." android:noHistory="true"></activity>
于 2012-08-09T06:17:25.480 に答える
1

通知が届いたら、Home Activity を開始し、その onCreate で itemActivity を開始できます。そうすれば、スタック内で項目アクティビティの下に HomeActivity があり、戻るボタンを押すとホーム アクティビティに移動します。

于 2012-08-04T02:01:26.163 に答える