Activity生命周期

//Activity生命周期

                   ********完整生命周期开始******************************************

                   onCreate(Bundle savedInstanceState)只调用一次,适合数据初始化

                  

                   *********可视生命周期开始***********************

                   onStart();

                  

                   ****前台生命周期开始*****

                   onResume();可见,处于运行状态,可响应用户操作

                   当另一个Activity被创建

                   1-->另一个Activity为对话框或透明,即未完全挡住之前的Activity

                   onPause();暂停状态,按返回调用onResume,可能被系统杀死

                   2-->另一个Activity完全挡住之前的Activity

                   ****前台生命周期结束*****

                  

                   onStop();停止状态,按返回调用onRestart->onStart(),可能被系统杀死

                   *********可视生命周期结束***********************

                  

                   当用户点击返回键、切屏、键盘显示隐藏切换

                   onDestory();销毁状态

                   ********完整生命周期结束*****************************************

                  

                   当遇到突发情况(内存不足,用户按Home键)由系统销毁一个Activity,onSaveInstanceState(Bundle

                   outState)会被调用,此时可根据需要重写该方法保存一些临时数据(持久化数据的保存一般在onPause()中执行),另外,

                   Activity由运行状态进入暂停或停止状态该方法也会被调用,若用户主动销毁一个Activity,如按返回键,该方法不会被调用

                   重写方法onRestoreInstanceState(BundlesavedInstanceState)可获得保存的临时数据

                  

                   默认情况下,当 切屏或 键盘显示隐藏 变化时都会销毁当前Activity,创建新的Activity.如果不希望创建新的Activity

                   实例,可以按如下配置Activity

                   <activityandroid:name="MainActivity"android:configChanges="keyboardHidden

                   |orientation">

                   上面的android:configChanges属性指定了要捕获 屏幕切屏和键盘显示隐藏变化,当捕获到这些变化后会调用Activity的

                   onConfigurationChanged()方法;

                  

                   默认情况下(未配置android;configChanges属性)

                   竖屏切横屏,销毁当前Activity之后,创建一个新的Activity实例

                   横屏切竖屏,销毁当前Activity之后,创建一个新的Activity实例,新的Activity实例很快就被销毁,接着又会创建一个新的

                   Activity实例,如果只希望创建一个实例,可以配置

                   android:configChanges="orientation"

                  

                   在Android中,应用的响应被活动管理器ActivityManager和窗口管理器Window Manager所监视,当应用5秒内

                   未响应时,系统会认为应用无响应,弹出错误信息,所以,耗时操作一般都放在子线程中进行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值