假设我创建了mutableLivedata变量(一个观察者),并通过它更新了一个textview,现在我希望清除一旦它更新textview时由livesata发送的值,就像我刚创建的Livedata变量及其初始阶段的新鲜,它没有任何价值。我怎样才能做到这一点?
谢谢
你不会这样做的。
使用LiveData
的主要原因之一是让其他组件能够观察到LiveData
的内容。
例如,假设您使用LiveData
来跟踪计数器被按下的次数。你使用TextView
观察这个LiveData
,这样你就可以在LiveData
更新时显示计数器的数量。
这是LiveData
的预期用途。
根据你想要做的事情,你将LiveData
的内容设置为空的那一刻,观察到TextView
的LiveData
也将自我更新为空。
如果你想在LiveData
中显示它的值后重置TextView
,那么LiveData
不适用于你打算做什么。
简单地使用String
会更容易,更有效率。
编辑:
但是如果你仍然想要这样做,只要你的LiveData
是MutableLiveData
,你就可以使用setValue()
方法来设置默认值。