博客
关于我
android Lifecycle源码分析--源码阅读100天(1)
阅读量:244 次
发布时间:2019-02-28

本文共 1687 字,大约阅读时间需要 5 分钟。

Lifecycle???????????????????????????????Activity?Fragment?????????????????????????????????????????????????

1. ??

Lifecycle????????????????Fragment?Activity????????????????????????????????????????????Presenter????????????????????

????

class MainActivity : AppCompatActivity() {    override fun onCreate(savedInstanceState: Bundle?) {        super.onCreate(savedInstanceState)        setContentView(R.layout.activity_main)        lifecycle.addObserver(Presenter())    }}class Presenter : LifecycleObserver {    @OnLifecycleEvent(Lifecycle.Event.ON_CREATE)    fun onCreate() {        println("presenter oncreate")    }    @OnLifecycleEvent(Lifecycle.Event.ON_START)    fun onStart() {        println("presenter onstart")    }    // ????????...}

???????Presenter?Activity????????????????????????????Presenter??????Activity?????????????????????????????


2. ??

2.1 ?????

Lifecycle??????????????????LifecycleRegistry???????????????LifecycleObserver???????????????????

2.2 ??????

Lifecycle????Fragment?Activity????????????SupportActivity??LifecycleOwner????????????LifecycleRegistry??Fragment?Activity???????????LifecycleRegistry??????????????LifecycleObserver?

2.3 LifecycleRegistry??

LifecycleRegistry?Lifecycle???????????????????????????

  • addObserver??

    ???????LifecycleRegistry?????ObserverWithState?????????????????FastSafeIterableMap??

  • handleLifecycleEvent??

    ??????????????????????????sync???????

  • sync??

    ????????????????????backwardPass?forwardPass???????????????????????????

  • forwardPass??

    ???????????????dispatchEvent?????????????

  • dispatchEvent??

    ????????????????????????ReflectiveGenericLifecycleObserver??????????


  • ???????Lifecycle??????????????????????????????????????

    ????????????????????

    转载地址:http://nbls.baihongyu.com/

    你可能感兴趣的文章
    python多处理参数:深拷贝?
    查看>>
    Python多处理使用队列写入同一个文件
    查看>>
    Python多处理.Process:从局部变量开始
    查看>>
    Python多处理-进程数
    查看>>
    python多个定时器_python单线程实现多个定时器示例
    查看>>
    python处理文本_Python - Tokenization
    查看>>
    Python处理数据方向之OpenCV
    查看>>
    python处理一亿条数据_Python数据分析实战(一)
    查看>>
    Python处理PDF神器:PyMuPDF的安装与使用
    查看>>
    Python处理Excel数据
    查看>>
    Python基础:集合与文件操作
    查看>>
    Python基础:搭建开发环境(1)
    查看>>
    PYTHON基础:如何阅读N个整数,直到#39;
    查看>>
    Python基础:11变量作用域和闭包
    查看>>
    Python基础: with模式和__enter__ 和 __exit__
    查看>>
    Python基础(7)--函数
    查看>>
    Python基础部分-while循环,格式化输出
    查看>>
    Python基础语法:顺序语句结构
    查看>>
    Python基础语法:理解代码与写代码
    查看>>
    Python基础语法:条件和分支
    查看>>