【问题标题】:How do I append one MutableLiveData List to Another in Kotlin如何在 Kotlin 中将一个 MutableLiveData 列表附加到另一个列表
【发布时间】:2020-04-01 15:36:47
【问题描述】:

我有两个这样的 MutableLiveData 列表

  val products = MutableLiveData<List<Product>>()
  val moreProducts = MutableLiveData<List<Product>>()

请问如何在 Kotlin 中将“moreProducts”附加到“products”

【问题讨论】:

  • “追加”是什么意思?如果您的意思是“我想要一个来自每个 LiveData 的组合列表”,那么消费者可以这样做,或者您需要第三个 LiveData 代表组合列表。
  • @Francesc 的解决方案对我有用,基本上我只想要一个组合列表。这些概念中的大多数仍然是新手,所以我不确定您所说的消费者是什么意思
  • 您选择的解决方案在某个时间点有效,如果 MutableLiveData 缺少值,则会失败。如果您使用LiveData,那么您应该有一个Observer 在数据可用时使用它。根据您对Observer 中数据的处理,可能需要Observer 的工作来合并您的结果。
  • 为什么不能使用单个 livedata?

标签: android arrays kotlin arraylist mutablelivedata


【解决方案1】:

你可以这样做

products.value = prducts.value.orEmpty() + moreProducts.value.orEmpty()

【讨论】:

    猜你喜欢
    • 2023-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-17
    • 2022-10-25
    • 2018-01-13
    • 2018-02-12
    • 1970-01-01
    相关资源
    最近更新 更多