0

新しい childActivity を開始するときの TabGroupActivity の拡張:

public void startChildActivity(String Id, Intent intent) {
    Window window = getLocalActivityManager().startActivity(Id,
            intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP));
    if (window != null) {
        activityIdList.add(Id);
        setContentView(window.getDecorView());
    }
}

現在のアクティビティを一時停止状態にするにはどうすればよいですか?

この方法で子アクティビティを開始した後、再起動すると on create メソッドが実行されるためです。どうすればこれを回避できますか?

解決策の 1 つは、別のフラグを使用することです。

Intent.FLAG_ACTIVITY_REORDER_TO_FRONT

しかし、それが最善の解決策であるかどうかはわかりません

PPS 別の解決策は、ブール値のインテントを startChildActivity メソッドに追加することです。

public void startChildActivity(String Id, Intent intent) {
    intent.addExtra("resume", true);
    Window window = getLocalActivityManager().startActivity(Id,
            intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP));
    if (window != null) {
        activityIdList.add(Id);
        setContentView(window.getDecorView());
    }
}

子アクティビティから取得し、アクティビティが再起動されたかどうかを確認します

4

1 に答える 1

0

これをマニフェストファイルのアクティビティタグに入れてみてください

android:launchMode="singleTask"

このように見えるはずです

<activity android:name=".dashboard.DashboardActivity" android:screenOrientation="portrait"
        android:launchMode="singleTask"/>
于 2011-09-27T12:16:37.570 に答える