Lifecycle是什么
Lifecycle 是一个类,用于存储有关组件(如 Activity 或 Fragment)的生命周期状态的信息,并允许其他对象观察此状态。
Lifecycle概述https://developer.android.google.cn/topic/libraries/architecture/lifecycle
Lifecycle使用
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
getLifecycle().addObserver(new LifecycleEventObserver() {
@Override
public void onStateChanged(@NonNull LifecycleOwner source, @NonNull Lifecycle.Event event) {
Log.e("tag", "【onStateChanged】: " + event.name());
}
});
}
}
运行如下:
Lifecycle原理
uml图总结:
这里不从代码角度展开,直接画出addObserver出执行的逻辑流程图
各个声明周期的执行逻辑:
本文含有隐藏内容,请 开通VIP 后查看