LiveData的使用

2023-02-02  本文已影响0人  奔跑的佩恩

前言

在上一节,我们讲到了ViewModel的使用,ViewModel的两大优势是:数据隔离和Activity整个生命周期保持数据持有。大家感兴趣的话,可参看以下文章:
ViewModel的使用
那么今天就让我们来学习下LiveData的使用吧
今天涉及内容:

  1. 为什么要用LiveData?
  2. LiveData在activity中的使用
    2.1 定时刷新的实现方式
    2.2 LiveDataactivity 中实现
  3. 需要注意的问题
    3.1 LiveData 使用注意
    3.2 Timer 为啥放到 ViewModel 中
  4. 效果图和项目结构图

运行效果图如下:


效果图.gif

一. 为什么要用 LiveData

当我们在进行网络请求这一类的动作并获得请求返回的数据时,需要一个回调监听来更新界面ui,于是我们就需要LiveData,LiveData就是我们常理解的回调监听,也可以认为是观察者模式,在其回调的方法中可以直接刷新UI

二. LiveData 在 activity 中的使用

下面以定时器定时刷新界面数字为例进行讲解。

2.1 定时刷新的实现方式

首先,我们考虑下是实现定时刷新UI的方式,有Thread(handler.post),TimerRxBus等,但这些都只能实现周期效果,刷新UI的时候,还是需要Handler+message做配合,让代码显得臃肿。但是现在,我们可以用LiveData直接监听数据变化,并直接处理UI刷新。

2.2 LiveData 在 activity 中实现

下面先给出MainActivity的代码:

上一篇 下一篇

猜你喜欢

热点阅读