提问者:小点点

从ViewModel观察LiveData


我有一个单独的类来处理数据提取(特别是Firebase),我通常从它返回LiveData对象并异步更新它们。现在我希望将返回的数据存储在ViewModel中,但问题是为了获得所述值,我需要观察从数据提取类返回的LiveData对象。observe方法需要一个LifecycleOwner对象作为第一个参数,但我的ViewModel中显然没有这个对象,而且我知道我不应该在ViewModel中保留对activity/片段的引用。我该怎么办?


共1个答案

匿名用户

在Google开发人员Jose Alcérreca的这篇博客文章中,建议在这种情况下使用转换(请参见“存储库中的LiveData”段落),因为ViewModel不应该包含任何与view(activity、上下文等)相关的引用,因为它很难测试。

相关问题