1

簡単に言うと、例を挙げると、基本的に 3 つのアクティビティを持つアプリがあります。

StartActivity には、他の 2 つのアクティビティにそれぞれ対応する 2 つのボタンが含まれており、それらを起動します。Activity1 からアプリケーションを終了すると、後で電話からアプリ アイコンをクリックすると、Android がこれを追跡するため、Activity1 が再起動されます。アプリを再起動して StartActivity に移動する必要があります。これにより、StartActivity に戻るために [戻る] ボタンをクリックする必要がなくなり、ボタンをクリックして移動先を選択できるようになります。onResume と onRestart が関係していると思いますが、どこに行けばよいのでしょうか?

どんな助けでも大歓迎ですありがとう。

4

5 に答える 5

6

マニフェスト ファイルの android:clearTaskOnLaunch アクティビティ属性を見ることができます: http://developer.android.com/guide/topics/manifest/activity-element.html

ルートアクティビティでこの属性を「true」に設定すると、必要なことが行われると思います。

于 2011-08-12T22:13:56.203 に答える
2

解決策は Activity1 と Activity2 を破壊することだと思いますonStop。これにより、スタックには StartActivity のみが残ります。アクティビティでメソッドを呼び出して、finishいつでもプログラムで終了できます。

于 2011-08-12T22:12:57.693 に答える
0

一般的に(私が理解していることから)動作する方法は、BACKボタンを使用してアクティビティを終了し、HOMEボタンは基本的にアクティビティを「最小化」し、開いたままになっているアクティビティに戻ります。

この機能はそのままにしておく必要がありますが、ホーム ボタンをオーバーライドしてアプリケーションを完全に終了することができます。

于 2011-08-12T22:09:35.773 に答える
0

mainfest.xml ファイルに次のように記述します。

<activity android:name=".StartActivity" android:label="@string/app_name"
                android:clearTaskOnLaunch="true">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>  

android:clearTaskOnLaunch="true" 属性は、アクティビティを自動的に再開します。

于 2011-08-13T05:38:02.660 に答える