gpt4 book ai didi

android - 如何在Activity的另一种方法中使用LiveData值?

转载 作者:行者123 更新时间:2023-12-03 10:31:09 26 4
gpt4 key购买 nike

我正在使用MVVM体系结构,并且很难弄清楚从LiveData中观察到的值存储在哪里,这仅需要在相同onActivityResult()Activity或其他方法中的if语句中使用。
假设我有这种方法,可以观察viewModelActivity中的实时数据。

fun subscribeObservers() {
myViewModel.liveData.observe(viewLifeCycleOwner, Observer { myLiveDataString ->
setTextField(myLiveDataString)
});
}
我想使用从LiveData中观察到的特定值,即 onActivityResultActivity
假设这样
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
if (requestCode == RC) {
if (myLiveDataString == "ERROR") {
showErrorDialogToUser()
}
}
}
所以我的问题是我应该在哪里存储从LiveData观察到的数据以检查 If语句?我应该将其存储在 Activity中吗?这是个好主意吗?

最佳答案

只需使用myViewModel.liveData.value即可获取值。

Shouldn't liveData value be retrieved only through observer method?


不仅。观察时,当值更改时会收到通知。没有什么可以阻止您检查该值。 LiveData只是一个数据持有者。

关于android - 如何在Activity的另一种方法中使用LiveData值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64277925/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com