Android OnBackPressed完成()?

时间:2013-10-23 08:45:46

标签: android

我想知道在onBackPressed() finish()函数中实施所有活动是否合适?或者它不实用,甚至不好做到这一点?

如果没有,除了要在每个活动中显示和输入SingleInstance(我认为它会使应用程序更慢)之外还有哪些其他选项,我有吗?

感谢。

2 个答案:

答案 0 :(得分:13)

首先,硬件后退按钮本身调用finish()方法。如果您在活动中定义onBackPressed()方法,则意味着您将覆盖backButton的默认行为,因为按下后退按钮时会调用onBackPressed()方法。

现在,是否创建单个活动实例取决于您的要求,例如启动画面可以由单个实例组成,因为它在应用程序启动时只能看到一次,并且不需要将此活动保留在后台堆栈中。您经常使用的活动不应该是单一的实例,否则罕见的活动可以成为一个实例。

浏览Back Stack Documentation以获取完整信息。

  

standard和'singleTop'可以实例化多个活动实例,实例将保留在同一个任务中。   对于“singleTask”或“singleInstance”,活动类使用单例模式,该实例将是新任务的根活动。

答案 1 :(得分:0)

这取决于您的应用程序要求,因为我们经常使用finish() 但你也可以管理android的生命周期。

最好使用暂停和恢复方法。