【发布时间】:2023-03-25 16:59:01
【问题描述】:
我看到了很多对ViewModel.Factory 的引用,但我遇到的每个示例都引用了依赖注入。基于这个问题:Why a viewmodel factory is needed in Android? 当您的构造函数有参数时,这似乎是必需的。这是否也适用于不使用 Dagger 等依赖注入框架的项目?
这是我想要做的:
public CatalogVerticalListViewModel(@NonNull Application application, RecyclerView.Adapter adapter) {
super(application);
final CatalogAdapter catalogAdapter = (CatalogAdapter) adapter;
CatalogManager cm = new CatalogManager(Constants.BASE_URL);
pageData = cm.getCatalog();
}
我需要/想要将我的适配器传递给ViewModel,我想知道是否需要为此创建一个自定义工厂。如果是这样,那会是什么样子?
【问题讨论】:
-
但是为什么要将适配器传递给 ViewModel?不应该在 ViewModel 中使用 LiveData 并在 Activity/Fragment 中观察它,然后设置适配器吗?