【发布时间】:2017-07-31 13:11:30
【问题描述】:
我正在开发一个呼叫应用程序。我的 HomeActivity 是一个 singleTask 活动。我的通话活动也是一个单任务活动。
从 HomeActivity 发起呼叫。目前,我的应用程序有两个任务,因为它们都是 singleTask。在通话屏幕中,我有一个按钮可以访问我的 HomeActivity。
当我在通话屏幕中按下主页按钮并返回时,我的通话活动被破坏。但它不应该被摧毁。它应该保留。
当我在通话屏幕中按下主页按钮时,我会执行以下操作。
Intent intent = new Intent();
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
intent.setClass(this.getActivity(), MyHomeActivity.class);
startActivity(intent);
我的清单声明:
<activity
android:name=".XXX.MyHomeActivity"
android:label="@string/app_name"
android:alwaysRetainTaskState="true"
android:launchMode="singleTask"
android:screenOrientation="portrait"
android:windowSoftInputMode="adjustNothing"
android:theme="@style/MyTheme"
>
</activity>
<activity
android:name=".XXX.MyCallActivity"
android:label="@string/app_name"
android:launchMode="singleTask"
android:screenOrientation="portrait"
android:theme="@style/MyTheme"
android:windowSoftInputMode="adjustResize">
从 CallActivity 膨胀 HomeActivity:
Intent intent = new Intent();
intent.setClass(this.getActivity(), HomeActivity.class);
startActivity(intent);
膨胀的 CallActivity:
Intent intent = new Intent();
intent.setClass(this, CallActivity.class);
startActivity(intent);
谁能帮助我使用导航参数来实现这一点?
【问题讨论】:
标签: android navigation task back-stack launchmode