LifeCycle

作者: ivotai | 来源:发表于2020-03-28 12:24 被阅读0次

    LifeCycle 的出现,表明在某种程度上,可以将 Activity 和 Fragment 一视同仁了。

    一个监测 Activity 声明周期结束的例子。

    class SecondActivity : AppCompatActivity() {
    
        override fun onCreate(savedInstanceState: Bundle?) {
            super.onCreate(savedInstanceState)
            setContentView(R.layout.activity_second)
    
            lifecycle.addObserver(TestObserver())
        }
    
    }
    
    class TestObserver : LifecycleObserver {
    
        @OnLifecycleEvent(Lifecycle.Event.ON_DESTROY)
        fun onDestroy() {
            Logger.d("onDestroy")
        }
    
    }
    

    每当退出 SecondActivity 就能看到如下日志。

    D/PRETTY_LOGGER: ┌────────────────────────────────────────────────────────────────────────────────────────────────────────────────
        │ Thread: main
    D/PRETTY_LOGGER: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
        │ Method.invoke  (Method.java:-2)
    D/PRETTY_LOGGER: │    TestObserver.onDestroy  (TestObserver.kt:12)
        ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
        │ onDestroy
    D/PRETTY_LOGGER: └────────────────────────────────────────────────────────────────────────────────────────────────────────────────
    

    相关文章

      网友评论

          本文标题:LifeCycle

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