实施多项活动的最佳方式是什么?

时间:2015-04-08 17:13:01

标签: java android android-manifest

我的应用程序中有一些活动,我将它们定义为:                                                                              

    <activity
            android:name=".DetailsActivity"
            android:launchMode="singleTask"
            android:clearTaskOnLaunch="true"
            android:excludeFromRecents="true"/>

    <activity
            android:name=".ZoomActivity"
            android:theme="@style/Theme.Something.FullScreen"
            android:launchMode="singleTask"
            android:clearTaskOnLaunch="true"
            android:excludeFromRecents="true"/>

    <activity
            android:name=".RadioActivity"
            android:label="@string/radio"
            android:launchMode="singleTask"
            android:clearTaskOnLaunch="true"
            android:excludeFromRecents="true"/>

    <activity
            android:name=".SettingsActivity"
            android:label="@string/settings"
            android:launchMode="singleTask"
            android:clearTaskOnLaunch="true"
            android:excludeFromRecents="true"/>

DetailsActivity和ZoomActivity是在点击RecyclerView中的项目后启动的活动,它们只显示项目的详细信息。

RadioActivity是一项服务绑定的活动。

SettingsActivity只是一个普通的Android偏好活动。

我不确定这是否是定义多个活动的最佳方式(我的意思是launchMode,clearTaskOnLaunch和excludeFromRecents)。

我应该保留原样,还是改变我的做法?

提前致谢。

1 个答案:

答案 0 :(得分:1)

你的方法很好。

如果您害怕必须申报许多活动,那么您可能会不必要地创建可以重复使用的新活动子类。请记住,您可以通过Intent的捆绑包轻松地将数据传递到活动中。

很难说您为每项活动提供的标志是否合理,但如果您希望应用程序在用户退出一项活动时关闭,并且其本身没有历史记录后面的堆栈,然后这将完成该任务。