美文网首页
Fragment源码结构简析

Fragment源码结构简析

作者: 饮识止渴 | 来源:发表于2018-03-03 09:50 被阅读0次

Activity、FragmentManager、FragmentTransaction、Fragment四者关系

Activity使用FragmentManager 来管理Fragment生命周期

FragmentManager 使用 FragmentTransaction管理Fragment事务操作

Activity 对FragmentManager引用

final FragmentControllermFragments =FragmentController.createController(new HostCallbacks());

Activity使用通过FragmentController来引用FragmentManager

FragmentManager同时使用HostCallbacks来引用Activity,以及监听Activity的生命周期

FragmentManager通过beginTransaction方法使用FragmentTransaction

FragmentManager实现类为FragmentManagerImpl

FragmentManager实现异步切换Fragment机制:是通过Handler loop 来进行的

简单来说,就是现在的Fragment commit会在下个Loop中执行

重要方法:moveToState

Fragment生命周期过程是通过这个方法管理的

FragmentTransaction实现类为BackStackRecord

他的作用主要是生成ArrayList<Op>序列,然后通过OpGenerator进行事务管理

commit方法最终会调用FramgentManager enqueueAction来执行事务动作

相关文章

  • Fragment源码结构简析

    Activity、FragmentManager、FragmentTransaction、Fragment四者关系...

  • Fragment源码简析(二)

    上一篇 Fragment源码简析(一)接上一篇 moveFragmentToExpectedState又调到了mo...

  • Fragment源码简析(一)

    先看使用Fragment的简单例子,这里用Android support v4的源码: 进入FragmentAct...

  • mybatis-spring解析

    1、概述 原生Mybatis源码简析(上)原生Mybatis源码简析(下)在介绍原生Mybatis源码简析文章中,...

  • Charts分析及使用

    1.Charts源码分析 1.1 文件组结构 1.2 ChartView类型图表简析 BarLineChartVi...

  • Android Leanback结构源码简析

    Leanback页面构建主要类 BaseGridView 继承RecyclerView,重写所有焦点逻辑,Lean...

  • iOS Runloop 补充

    主要讲解Runloop的底层结构; 文中使用的 CF源码是CF-1153.18版本; Runloop 简析Runl...

  • fragment

    Android fragment源码全解析 Android源码阅读笔记(1)----Fragment 关于Frag...

  • Android 系统结构与源码目录简析

    Android 是全球最受欢迎的移动操作系统,为手机、手表、平板电脑、电视等数十亿设备提供平台支持。Android...

  • Flink自定义StreamOperator

    在上一篇StreamOperator源码简析从源码角度分析了StreamOperator以及其实现类,此篇幅主要分...

网友评论

      本文标题:Fragment源码结构简析

      本文链接:https://www.haomeiwen.com/subject/yykxxftx.html