假设我创建了 mutableLivedata 变量(一个观察者),并通过它更新了一个 textview,现在我想清除 livedata 一旦它更新 textview 发送的值,就像我刚刚创建 Livedata 变量并且它在初始阶段是新鲜的一样,它没有价值. 我怎样才能做到这一点?
谢谢
假设我创建了 mutableLivedata 变量(一个观察者),并通过它更新了一个 textview,现在我想清除 livedata 一旦它更新 textview 发送的值,就像我刚刚创建 Livedata 变量并且它在初始阶段是新鲜的一样,它没有价值. 我怎样才能做到这一点?
谢谢
你不会这样做。
使用的主要原因之一LiveData是让其他组件能够观察LiveData.
例如,假设您使用 aLiveData来跟踪按下计数器的次数。您可以使用 aTextView来观察这一点,以便在更新LiveData时显示计数器的数量。LiveData
这是预期的用途LiveData。
随着你想要做的事情,当你将内容设置LiveData为空的那一刻TextView,正在观察的那个LiveData也会更新自己变成空的。
如果您想LiveData在 a 中显示它的值后进行重置TextView,LiveData则不适合您打算做的事情。
简单地使用 aString会更容易和更有效。
编辑:
但是如果你还想这样做,只要你LiveData是一个MutableLiveData,你可以使用该setValue()方法设置一个默认值。