lifecycle是Jetpack提供的一个组件,可以感知Activity,Fragment的生命周期变化。
简单使用定义一个类继承自lifecycleObserver,根据业务需要,在这个类中重写相应的方法
public class lifecycleObserverImpl implements lifecycleObserver { @OnlifecycleEvent(lifecycle.Event.ON_CREATE) public voID onCreate() { Log.d(MainActivity.TAG, "onCreate"); } @OnlifecycleEvent(lifecycle.Event.ON_START) public voID onStart() { Log.d(MainActivity.TAG, "onStart"); } @OnlifecycleEvent(lifecycle.Event.ON_RESUME) public voID onResume() { Log.d(MainActivity.TAG, "onResume"); } @OnlifecycleEvent(lifecycle.Event.ON_PAUSE) public voID onPause() { Log.d(MainActivity.TAG, "onPause"); } @OnlifecycleEvent(lifecycle.Event.ON_Stop) public voID onStop() { Log.d(MainActivity.TAG, "onStop"); } @OnlifecycleEvent(lifecycle.Event.ON_DESTROY) public voID onDestroy() { Log.d(MainActivity.TAG, "onDestroy"); }}
在Activity中使用
public class lifeCycleActivity extends AppCompatActivity { lifecycleObserverImpl observer; @OverrIDe protected voID onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentVIEw(R.layout.activity_lifecycle); //实例化 observer = new lifecycleObserverImpl(); //添加observer getlifecycle().addobserver(observer); } @OverrIDe protected voID onDestroy() { super.onDestroy(); //移除observer getlifecycle().removeObserver(observer); }}
这样,当Activity的生命周期变化时,我们自定义的observer就可以获取到变化。
运行应用,输出日志如下:
2020-04-14 11:08:06.579 22908-22908/com.wangyz.jetpack D/Jetpack: onCreate2020-04-14 11:08:06.580 22908-22908/com.wangyz.jetpack D/Jetpack: onStart2020-04-14 11:08:06.584 22908-22908/com.wangyz.jetpack D/Jetpack: onResume2020-04-14 11:08:11.350 22908-22908/com.wangyz.jetpack D/Jetpack: onPause2020-04-14 11:08:11.711 22908-22908/com.wangyz.jetpack D/Jetpack: onStop2020-04-14 11:08:11.713 22908-22908/com.wangyz.jetpack D/Jetpack: onDestroy
一个最简单的Demo就写好了。
总结以上是内存溢出为你收集整理的[Android][Jetpack] Lifecycle的基本使用全部内容,希望文章能够帮你解决[Android][Jetpack] Lifecycle的基本使用所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)