Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 活动生命周期_Android_Return_Main_Android Lifecycle - Fatal编程技术网

Android 活动生命周期

Android 活动生命周期,android,return,main,android-lifecycle,Android,Return,Main,Android Lifecycle,我有3项活动: 主活动->启动活动2 活动2->使用MP播放声音,如果完成,则开始活动3 活动3->使用MP播放另一个声音,如果已完成,则启动Main 现在我回到了主活动,我单击返回按钮并返回到活动3,但如果我在主活动中单击返回,我想退出应用程序。 如何处理此问题?您可以在使用finish()方法启动下一个活动时完成这些活动。如果你这样做了,你也不必启动Main 活动堆叠在一起。使用finish()可以删除当前活动,从而将其从堆栈中删除 活动3->完成后完成 活动2->调用3时完成 Main将其

我有3项活动:

主活动->启动活动2

活动2->使用MP播放声音,如果完成,则开始活动3

活动3->使用MP播放另一个声音,如果已完成,则启动Main

现在我回到了主活动,我单击返回按钮并返回到活动3,但如果我在主活动中单击返回,我想退出应用程序。
如何处理此问题?

您可以在使用
finish()
方法启动下一个活动时完成这些活动。如果你这样做了,你也不必启动Main

活动堆叠在一起。使用finish()可以删除当前活动,从而将其从堆栈中删除

活动3->完成后完成

活动2->调用3时完成


Main

将其添加到清单中的主活动定义中:
android:launchMode=“singleTask”

在您的示例中,当您在每个级别调用
startActivity
时,您正在向堆栈中添加活动。如果调用
startActivity
返回到主要活动,则只需将其添加到堆栈中。但是,如果您不想担心从堆栈中弹出所有内容,可以将其添加到活动的清单条目中,系统会将主活动放在堆栈顶部,并删除其中的任何其他内容


这种方法比在所有活动上调用
finish()
更简洁,因为您可能希望从活动3返回到活动2。

activity 3,将方法发布到start main?