4

私のアプリケーションには、理解できない動作があります。私はMainActivityとして Aを持っていSingleTaskます。ActivityそれもBと呼んでいSingleTaskます。2番目のアクティビティでボタンを押してHome別のアプリケーションを開き、その後ボタンを押した状態でアプリケーションに移動しようとすると、Home常に Mainに移動し、ボタンを押しActivityたときの状態を保持して2番目のアクティビティを開く必要がありますHome.

2 番目のアクティビティを singleTop に設定しようとしましたが、機能しません。

何か助けはありますか?

4

1 に答える 1

4

メイン アクティビティを singleTask で同時に定義すると、アクティビティ バック スタックの動作がおかしくなります。

<activity android:name=".MainActivity"
  android:launchMode="singleTask">
  <intent-filter>
    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LAUNCHER" />
  </intent-filter>
</activity>

さらに悪いことに、公式の開発ガイドには、この特殊な使用例に関する明確な説明がありません。このトピックに関連するいくつかのセクションは、自己矛盾しています。

MainActivityA とB でlaunchMode="standard" を使用してみてください。launchMode="singleTask"これによりActivity、説明した期待どおりの動作が得られます。

于 2012-02-20T21:11:27.960 に答える