【发布时间】:2014-02-17 22:33:03
【问题描述】:
我不希望我的应用程序在按下back 按钮时显示很少的Activity(比如SplashScreenActivity)。所以我在我的Manifest.xml 中使用了noHistory=true 作为Activity,如下所示:
<activity
android:name="com.gokul.SplashScreenActivity"
android:noHistory="true" >
</activity>
除了设置noHistory之外,我还可以在我的SplashActivity.onPause()方法中或任何我想要的地方调用finish(),如下所示:
@Override
protected void onPause() {
super.onPause();
finish();
}
两者都完美地完成了这项工作。但是哪个更好用,使用noHistory 还是调用finish()?
【问题讨论】:
-
请注意 noHistory 也有“副作用” - 当您将 noHistory 活动置于后台(例如按下 Home 按钮)当用户返回它时(通过“最近的应用程序”),它不会显示
-
亲爱的@MarianPaździoch 当用户同时按下主页和返回按钮时,我们如何终止应用程序?因为当用户按下主页按钮时,我的 Google TTS 和 Locale 库出现故障。 android:noHistory="true" 的清单代码仅修复了用户按下返回按钮时的问题,但主页按钮仍然存在错误。谢谢。
-
android:excludeFromRecents="true" 这将在按下设备上的主页和返回按钮时终止应用程序似乎从未打开过:D
标签: android back-stack activity-stack