鸿蒙OS开发文档 鸿蒙OS DataObserver

2024-02-25 开发教程 鸿蒙OS开发文档 匿名 4

DataObserver

java.lang.Object
|---ohos.aafwk.abilityjet.activedata.DataObserver<T&

public abstract class DataObserver<T>
extends Object

在 ActiveData 的数据更改时接收通知的观察者的基类。

ActiveData 的观察者必须继承这个类并覆盖 onChanged(java.lang.Object) 方法。 这样,ActiveData 可以通过使用 onChanged(java.lang.Object) 通知观察者数据的变化。

DataObserver 通过 setLifecycle(ohos.aafwk.ability.Lifecycle) 方法持有一个 Lifecycle 对象。 该对象表示匹配的 Ability 或 AbilitySlice 的生命周期。 DataObserver 还允许 ActiveData 观察其生命周期的变化。 因此,DataObserver 和 ActiveData 相互观察。 DataObserver 观察 ActiveData 的数据变化,ActiveData 观察 DataObserver 的生命周期变化。

构造函数摘要

构造函数描述
DataObserver()

方法总结

修饰符和类型方法描述
abstract voidonChanged(Tvalue)通知观察者正在观察的数据已更改。
voidsetLifecycle(Lifecycleowner)设置观察者的生命周期状态。
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

构造函数详细信息

DataObserver

public DataObserver()

方法详情

onChanged

public abstract void onChanged(T value)

通知观察者正在观察的数据已更改。

ActiveData 的观察者必须实现此方法,以便在数据更改时通知他们。

参数:

参数名称参数描述
value表示正在观察的数据的新值。 此参数不能为空。

setLifecycle

public final void setLifecycle(Lifecycle owner)

设置观察者的生命周期状态。

当观察者的生命周期状态发生变化时,ActiveData 对象将被通知。

参数:

参数名称参数描述
owner指示观察者的生命周期状态。 此参数不能为空。

Throws:

Throw名称Throw描述
IllegalArgumentException无效的参数
IllegalStateException无效的生活所有者