Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/218.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_Splash Screen - Fatal编程技术网

Android 安卓:重置启动屏幕

Android 安卓:重置启动屏幕,android,splash-screen,Android,Splash Screen,在我的Android应用程序上,我设置了一个启动屏幕。启动屏幕在应用程序打开时打开,并持续两秒钟,然后重定向到登录屏幕 我遇到的问题是,启动屏幕显示一次,然后重新指向登录屏幕。但当我再次点击应用程序时,它会直接进入登录屏幕,忽略启动屏幕。。。这有什么原因吗?它会在您的最后一个屏幕上自动打开吗?因为如果我在登录屏幕上打开时点击后退按钮,它会返回初始屏幕,但2秒钟后不会重定向到登录屏幕 有人说过:“将clearTaskOnLaunch via the Android Manifest of the

在我的Android应用程序上,我设置了一个启动屏幕。启动屏幕在应用程序打开时打开,并持续两秒钟,然后重定向到登录屏幕

我遇到的问题是,启动屏幕显示一次,然后重新指向登录屏幕。但当我再次点击应用程序时,它会直接进入登录屏幕,忽略启动屏幕。。。这有什么原因吗?它会在您的最后一个屏幕上自动打开吗?因为如果我在登录屏幕上打开时点击后退按钮,它会返回初始屏幕,但2秒钟后不会重定向到登录屏幕

有人说过:“将clearTaskOnLaunch via the Android Manifest of the project设置为true。这将在每次启动活动时清除任务/堆栈历史记录。”--但我不知道将其放在Anndoird Manifest的何处。。我甚至不确定这是否是我问题的解决方案,因为我实际上希望整个应用程序在单击图标时重新启动,而不是在最后一页上继续

救命啊


谢谢

点击“返回”不会终止您的应用程序。因此,它返回到上次打开的屏幕。如果您终止应用程序,飞溅将重新出现(如您所述)


您可以在android清单文件中设置
android:clearTaskOnLaunch=“true”
,在该文件中,您的“启动活动”是用
定义的。您是否希望在从登录活动按回时显示启动屏幕?因为任何用户都会讨厌这个。帮您的用户一个忙,在启动屏幕启动登录活动后,请调用
finish()
。然而,如果你真的关心你的用户一点,你会完全删除启动屏幕(除非你有一些数据要加载,或者某件事情实际上需要两秒钟才能完成,而且不能推迟)


现在,谈谈你的主要问题。是的,Android操作系统确实会在内存中保留活动堆栈一段时间,但前提是您使用HOME按钮有效地最小化应用程序。如果按后退按钮,活动将终止。当没有其他活动时,流程将终止(使用后退按钮)。不建议覆盖此行为,因此我不会发布任何关于此行为的指针(尽管其他人已经发布了)。

在这种情况下,什么是最好的解决方案?clearTaskOnLaunch=“true”能实现这一点吗?android:clearTaskOnLaunch实际上是一个更好的主意,正如Che所提到的。-1,我不认为覆盖
onPause()
会有什么帮助。另外,非常推荐覆盖
onPause()
(?)我认为他的意思是覆盖onPause()以捕捉主页按钮的行为@巴特:对了,你是说打‘家’而不是‘回来’?菲利克斯:你完全正确,我把我的错误删掉了。切:我没有提到“打到家”……我很难让它工作。现在它将出现并停留在初始屏幕上。有什么想法吗?我不明白,你说它“停留”在启动屏幕上是什么意思?在模拟器中,当我单击“主页”按钮,然后重新启动应用程序时,它停留在启动屏幕上。。。但是,如果我按“上一步”按钮返回主屏幕,它将显示启动屏幕,然后正确进入登录屏幕。发布了一个可能有帮助的链接。这是特定于您的代码的。请记住,上一个堆栈中的活动仍将经历活动生命周期-将调用finish()。我基本上只希望每次打开应用程序时启动屏幕在开始时显示一次。发布启动屏幕代码。我遵循了本教程: