activity的生命周期

activity的生命周期

1.1 activity的基本概念

            activity是Android的四大组件之一,里面可以放很多组件和用户交流,比如QQ聊天界面,QQ好友界面都是一个activity里面放了很多的组件。用户通过点击一些组件来完成某些事情,一个app中可以存放多个activity。

1.2 activity的生命周期图


1.3 activity的生命周期方法

                (1)OnCreate()此时activity不可见,当且仅当activity创建时才会调用此方法,当一个activity刚创建时就会执行此方法,每当我们写一个activity时就会重写父类的OnCreate()方法一般会在这里初始化一些控件之类的,但这时候初始化一些动画之类的,因为用户是看不到的。

                (2)OnStart() 此时activity是可见的但没有焦点,我们把一些初始化工作放在这里也是可以的,但是官方推荐放在OnCreate()和我们的一些习惯。

                (3)OnResume()此时activity已经获得了焦点可以和用户进行交互了,用户可以随意的点击了。

                (4)OnPause()此时activity失去焦点可见,这方法是在我们切换activity时启动的,当我们切换activity时会调用此方法来保存一些数据和资源,但是不能超过0.5s,否则系统会强制关闭activity。

            (5)OnStop()此时activity已经不可见,但是对象还在栈中,没有被销毁,当activity切换回来时会调用OnRestrat()来重启activity。

                (6)OnDestroy()此时activity不可见,对象也被销毁。

                (7)OnRestrat()此时activity会重新启动,但不会调用OnCreate(),直接调用OnStrat()。

1.4 activity在执行中方法调用的顺序

                (1)在切换activity时执行的顺序:OnPause()-->OncRreate()-->OnStrat()-->OnResume()-->OnStop

                        点击back时:OnPause()-->OnReStart-->OnStart()-->OnResume()-->OnStop()-->OnDestroy()

                 (2)在执行弹窗时的生命周期OnPause()-->OncRreate()-->OnStrat()-->OnResume()

                       点击back时:OnPause()-->OnResume()-->OnStop()-->OnDestroy()

           (3)在横竖屏切换时的生命周期:OnPause()-->OnStop-->OnDestroy()-->OnCreate-->OnStrat()-->OnResume()

         不让它销毁重建只需在AndroidManiFest.xml文件中acyivity配置

                       android:configChanges="keyboardHidden|orientation|screenSize"

             (4)关于onSaveInstanceState()和onRestoreInstanceState()这两个方法后面会介绍

                       




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值