android中其实我们可以将Fragment看成一个有生命周期的View,它必须依附于Activity,当我们在Activity加载了一个Fragment的时候整个生命周期可以通过下面的log得到一个结论,先看log:

Activity初次加载:

-->activity ---onCreat

-->fragment---onAttach

- ->fragment---onCreat

- ->fragment---onCreatView

- ->fragment---onActivityCreated

-->activity ---onStart

-->fragment---onStart

-->activity---onResume

-->fragment---onResume

//当暂停时

-->fragment---onPause

-->activity---onPause

-->fragment---onStop

-->activity---onStop

//销毁

-->fragment---onPause

-->activity---onPause

-->fragment---onStop

-->activity---onStop

-->fragment---onDestoryView

-->fragment---onDestory

-->fragment---onDetach

-->activity---onDestory


从上面的生命周期可以看出。。加载的时候先activity,当在Fragment中完成activityCreated的时候,生命周期同activity【Activity>Fragment】,但是在暂停、销毁的时候顺序相反,先Fragment后Activity【Fragment>Activity】....其实完全可以理解这样的一个顺序,因为Fragment其实就一特殊的View,加载的时候先要准备好容器【Activity】,销毁的时候肯定得先销毁View,然后再是容器








更多相关文章

  1. Android(安卓)Jetpack组件学习 ViewModel & LiveData
  2. C# android base-64 字符数组的无效长度
  3. Android之Activity生命周期
  4. 对android:screenOrientation及android:configChanges的思考
  5. Android(安卓)context(Application/Activity)与内存泄露
  6. Android四大基本组件介绍与生命周期
  7. Android(安卓)- Jar mismatch! Fix your dependencies问题解决
  8. Android(安卓)6.0 之后无法找到 org.apache.http 包的问题
  9. [4.18]Android生命周期介绍

随机推荐

  1. MySQL5.7不停业务将传统复制变更为GTID复
  2. 查看当前mysql使用频繁的sql语句(详解)
  3. 对MySql经常使用语句的全面总结(必看篇)
  4. MySQL一个语句查出各种整形占用字节数及
  5. mysql 5.6.21 安装与配置详细步骤
  6. 关于mysql init_connect的几个要点总结
  7. Mac系统下源码编译安装MySQL 5.7.17的教
  8. innodb系统表空间维护方法
  9. 浅谈MySQL数据库中日期中包含零值的问题
  10. innodb引擎redo文件维护方法