启动模式不起作用

时间:2018-01-10 14:27:22

标签: java android xml manifest user-experience

我已经在清单文件中定义了启动模式,以便在backstack上只保留一个活动,但遗憾的是,它不能解决返回导航问题。也就是说,用户必须反复单击返回导航按钮才能退出应用程序。这是我的清单配置。

<?xml version="1.0" encoding="utf-8"?>

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_action_launcher"
    android:label="@string/app_name"
    android:roundIcon="@drawable/ic_action_launcher"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
    <activity android:name=".MainActivity"
        android:launchMode="singleTop"/>
    <activity android:name=".DataViewActivity"
        android:launchMode="singleTop"/>
    <activity android:name=".FormsViewActivity"
        android:launchMode="singleTop"/>
    <activity android:name=".ProfileViewActivity"
        android:launchMode="singleTop"/>
    <activity android:name=".NotificationsActivity"
        android:launchMode="singleTop"/>
    <activity android:name=".NotificationViewActivity"
        android:launchMode="singleTop"/>
    <activity android:name=".LoginActivity"
        android:launchMode="singleTop">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name=".InitialSetupActivity"
        android:launchMode="singleTop">
    </activity>
</application>

<uses-permission android:name="android.permission.INTERNET"/>

提前致谢

1 个答案:

答案 0 :(得分:1)

使用singleTasksingleInstance代替singleTop

在Android文档中:

标准和singleTop

  

使用&#34;标准&#34;的活动或&#34; singleTop&#34;启动模式可以   实例化多次。实例可以属于任何任务,并且可以位于活动堆栈中的任何位置。通常,它们会启动到调用startActivity()的任务中(除非Intent对象包含FLAG_ACTIVITY_NEW_TASK指令,在这种情况下选择了不同的任务 - 请参阅taskAffinity属性)

singleTask和singleInstance

  

相比之下,&#34; singleTask&#34;和&#34; singleInstance&#34;活动只能   开始一项任务。它们始终位于活动堆栈的根部。   此外,该设备只能在a处保存一个活动实例   时间 - 只有一个这样的任务。

来源:https://developer.android.com/guide/topics/manifest/activity-element.html

相关问题