【问题标题】:home button pressed按下主页按钮
【发布时间】:2013-02-05 14:10:45
【问题描述】:

当我在 Android 中按下主页按钮时会发生什么? 因为当我按下主页按钮后再次打开它时,它有一系列错误。 我需要知道它以找出导致错误的点。

更新: 当按下主页按钮时,应用程序进入后台并调用onPause() 并保存 UI 的状态,但它不保存应用程序的状态,如变量、自定义视图。正如 Oren 解释的那样,您必须手动保存它们。

【问题讨论】:

  • onPause() 被调用,应用程序进入后台。一系列错误是什么意思?
  • 你是指硬件home键,还是Action Bar中的home键?

标签: android


【解决方案1】:

当您按下 Home 按钮时,您的应用程序/活动会进入后台,当您再次打开它时,它会从原来的位置恢复,直到它被操作系统杀死/关闭。

Activity Life Cycle 会给你一个清晰的概念。

【讨论】:

  • 我想,它只会调用 onPause() 和 onResume() 它会从之前的位置恢复。但我不能再刷碎片了。调用 onPause() 时是否必须保存我的应用程序状态?
  • 你是对的,当你按下 Home 按钮时调用活动 onPause(),当你恢复应用程序时调用 onResume()
【解决方案2】:

技术上?任何事情都可能发生,从调用 onPause 到设备终止应用程序以释放内存,再到用户关闭并重新启动设备。您的应用应处理所有这些可能性。

延伸阅读:android activity lifecycle

【讨论】:

  • 它只是调用超级构造函数。我认为它拥有应用程序的状态。
  • 好吧。如果您致电super.onPause(),它将保存您所有视图的状态,从而维护 UI。但是,这与应用程序状态不同。任何内部变量、服装视图等都需要手动保存。查看onSaveInstanceState()onCreate() 的在线示例,看看它是如何完成的。
猜你喜欢
  • 2018-08-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-10-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多