一、概念
二、使用
2.1 添加依赖
2.2 创建观察者
2.2.1 实现 LifecycleObserver(已废弃)
class MyObserver : LifecycleObserver {
@OnLifecycleEvent(Lifecycle.Event.ON_CREATE)
fun onCreate() {}
@OnLifecycleEvent(Lifecycle.Event.ON_START)
fun onStart() {}
@OnLifecycleEvent(Lifecycle.Event.ON_RESUME)
fun onResume() {}
@OnLifecycleEvent(Lifecycle.Event.ON_PAUSE)
fun onPause() {}
@OnLifecycleEvent(Lifecycle.Event.ON_STOP)
fun onStop() {}
@OnLifecycleEvent(Lifecycle.Event.ON_DESTROY)
fun onDestroy() {}
}
2.2.2 实现 DefaultLifecycleObserver
class MyObserver : DefaultLifecycleObserver {
override fun onCreate(owner: LifecycleOwner) {}
override fun onStart(owner: LifecycleOwner) {}
override fun onResume(owner: LifecycleOwner) {}
override fun onPause(owner: LifecycleOwner) {}
override fun onStop(owner: LifecycleOwner) {}
override fun onDestroy(owner: LifecycleOwner) {}
}
2.2.3 实现 LifecycleEventObserver
class MyObserver : LifecycleEventObserver {
override fun onStateChanged(source: LifecycleOwner, event: Lifecycle.Event) {
when(event) {
Lifecycle.Event.ON_CREATE -> {}
Lifecycle.Event.ON_START -> {}
Lifecycle.Event.ON_RESUME -> {}
Lifecycle.Event.ON_PAUSE -> {}
Lifecycle.Event.ON_STOP -> {}
Lifecycle.Event.ON_DESTROY -> {}
Lifecycle.Event.ON_ANY -> {}
}
}
}
2.3 注册监听
在 MainActivity 的 onCreate() 方法中,通过 getLifecycle() 方法获取内部的 Lifecycle 对象,添加 MyObserver,那么 MyObserver 就可以观察到 MainActivity 的各个生命周期的变化。
Activity {
lifecycle.addObserver(MyObserver())
}
本文介绍了如何在Android应用中创建并使用MyObserver作为LifecycleObserver,详细讲解了如何在MainActivity中添加观察者以响应不同生命周期事件。
5897

被折叠的 条评论
为什么被折叠?



