【发布时间】:2020-12-26 11:33:43
【问题描述】:
例如,假设我们有一个产品目录视图,其中包含将产品添加到购物车的选项。 每次用户点击添加到购物车时,都会调用一个 viewModel 方法 addToCart,如下所示:
//inside viewModel
fun addToCart(item:Item): LiveData<Result> = liveData {
val result = repository.addToCart(item) // loadUser is a suspend function.
emit(result)
}
//inside view
addButton.onClickListener = {
viewModel.addToCart(selectedItem).observe (viewLifecycleOwner, Observer () {
result -> //show result
}
}
添加例如 5 个项目后会发生什么 -> 视图观察到的内存中会有 5 个 livedata 对象吗?
如果是,什么时候清理?如果是,我们是否应该避免使用 livedata builder 进行可以多次调用的一次性操作?
【问题讨论】:
标签: android kotlin mvvm android-livedata