安卓 fragment 的创建过程 怎么和activity关联的

1 commitNow

commitNow – disallowAddToBackStack – execSingleAction – ensureExecReady – checkStateLoss- generateOps –  optimizeAndExecuteOps –startTransitions –  calculateFragments –addToFirstInLastOut -manager.moveToState(fragment, Fragment.CREATED,0,0,false) – 执行 onAttach 和 onCreate – 接着 就按照 Manager的 state 来执行 所有的生命周期。

在主线程 立即执行到 Manager的生命周期  剩下没有执行的 则跟随主活动的生命周期 执行

2 commit

commit – disallowAddToBackStack – execPeddingAction – ensureExecReady – checkStateLoss- generateOps –  optimizeAndExecuteOps –startTransitions –  calculateFragments –addToFirstInLastOut -manager.moveToState(fragment, Fragment.CREATED,0,0,false) 。。。。

和 commitNow 不同的是  他放到messagequene里  顺序执行 不是 立即执行 

    原文作者:ZSACH
    原文地址: https://www.jianshu.com/p/3d842e8c33c9
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞