我可以从Java使用Koin的“ by sharedViewModel”吗?

时间:2018-12-08 00:23:09

标签: java android koin

我有一个现有的android java项目,我在其中介绍Koin for DI。

我一直在使用

private Lazy<DeckActivityViewModel> viewModel = inject(DeckActivityViewModel.class);

我想在多个片段之间共享viewmodel,所以想知道是否有Java等效于'by sharedViewModel()'吗?

2 个答案:

答案 0 :(得分:0)

当koin使用属性委托提供诸如inject()viewModel()sharedViewModel()之类的方法时,Java不支持属性委托。因此,答案是您不能在Java中使用它。

答案 1 :(得分:0)

对于Java Fragment,必须使用sharedViewModel的{​​{1}}或getSharedViewModel

SharedViewModelCompat