Android 各种生命周期
来源:互联网 发布:windows优化大师教程 编辑:程序博客网 时间:2024/05/16 12:56
1、activity的生命周期,如图示。(注:转载+整理)
Activity四种状态:
- 在屏幕的中正在显示的(Activity栈顶),叫做活动状态或者运行状态(active or running)
- 如果一个Activity失去焦点,但是依然可见(一个新的非全屏的Activity 或者一个透明的Activity 被放置在栈顶),叫做暂停状态(Paused)。一个暂停状态的Activity依然保持活力(保持所有的状态,成员信息,和窗口管理器保持连接),但是在系统内存极端低下的时候将被杀掉。
- 如果一个Activity被另外的Activity完全覆盖掉,叫做停止状态(Stopped)。它依然保持所有状态和成员信息,但是它不再可见,所以它的窗口被隐藏,当系统内存需要被用在其他地方的时候,Stopped的Activity将被杀掉。
- 如果一个Activity是Paused或者Stopped状态,系统可以将该Activity从内存中删除,Android系统采用两种方式进行删除,要么要求该Activity结束,要么直接杀掉它的进程。当该Activity再次显示给用户时,它必须重新初始化页面.
注:
1.activity 从onstart到onpause生命周期,该activity在前台一直可见。
2.点击home键,activity依次执行,onpause onstop该activity被覆盖,并没有被销毁(若手机内存不足,系统将会自动回收该activity),未被回收的状态下重新回到activity 执行onrestart() onstart() onresume() 。如果被销毁,将从onCreate函数开始重新初始化页面。
2、Fragment的生命周期 , 如图.
1、生命周期如上,我在自己的项目中用到的是ViewPager+FragmentActivity 重写FragmentPagerAdapter数据适配器。
2、ViewPager的setOffscreenPageLimit()函数可以一次性初始化指定数量的fragment,并且保存该fragment 这样在fragment切换到下一个时,不用重新初始化下一个fragment。
3、fragment中的setUserVisibleHint(boolean isVisibleToUser)函数,在fragment切换时,该函数将会被执行,判断函数中isVisibleToUser的值,若为true即当前fragment正显示在手机前端
0 0
- Android 各种生命周期
- android activity各种生命周期演示
- Android中各种组件的生命周期
- Android中各种组件的生命周期
- Android中各种组件的生命周期
- Android中各种组件的生命周期
- Topology各种方法生命周期
- 各种动物生命周期
- android生命周期
- android生命周期
- Android生命周期
- android生命周期
- Android 生命周期
- android 生命周期
- Android生命周期
- Android生命周期
- Android生命周期
- Android 生命周期
- QT数据库实例操作(二)
- Android应用启动优化:一种DelayLoad的实现和原理(转)
- 几个 Swift 代码规范 #swiftlang
- php对象和命名空间
- 未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序解决办法
- Android 各种生命周期
- Ⅰ.9 如何创建查询用户输入的半自动化测试
- angularJS学习之路(十三)---ng-change
- iOS企业版程序发布--升级
- 053-7 When executing a SQL workload, you choose to generate execution plans only, without collecting
- 四大组件之Service
- 笔记本硬盘数据恢复
- 事务的隔离级别
- 【Linux】Linux下JDK合理的安装位置