`
xun005
  • 浏览: 39969 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

android状态方法调用时间点(灭屏,来电,home) .

 
阅读更多

常用方法:

onCreate(Bundle)

-------初次创建,调用onCreate后,将不会进入onRestart,直接进入onStart------------

 
onReStart()

-------与onStop()对应,当前activity曾经被关闭,并且不是第一次创建Activity------------------


onStart()

-------屏幕可见------------------


onResume()

-------可和用户交互------------------


onPause() 

-------一旦离开,但“没有退出”当前activity,比如灭屏,比如弹出对话框------------------


onStop()

--------离开,退出当前activity---------


onDestroy

--------销毁activity-------

======================================

 

不常用的方法:

onWindowFocusChanged
------------当activity获得或者失去焦点时被调用,会在onResume和onStop之间的时间里被调用--------------

 

onUserLeaveHint

------------用户手动离开当前activity,会调用该方法,

------------比如用户主动切换任务,短按home进入桌面等。

------------系统自动切换activity不会调用此方法,如来电,灭屏等。

 

 

          2.3  HOME键      Home键退出:onPause -> onStop 

      Home键回来:onRestart ->  onStart -> onResume  

    2.4  休眠/恢复

      休眠:  onPause

      恢复:  onResume

    2.5  旋转屏幕

      未设置android:configChanges:

        onPause  ->  onStop  ->  onDestory  ->  onCreate  -> onStart  ->  onResume 

      设置了android:configChanges="orientation|keyboardHidden":

          不会触发生命周期方法,参见文章这里。 

    2.6  来电

      来电,显示来电界面:

        onPause  ->  onStop

      关闭电话界面,重新回到当前Activity:

        onRestart ->  onStart -> onResume

 

 

=====================================================================

备注:

--------短按home会进入onUserLeaveHint onpause,长按home不会调用onUserLeaveHint 方法。也不会调用任何生命周期方法。

--------灭屏只进入onPause

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics