【发布时间】:2019-01-08 03:14:21
【问题描述】:
那里,我需要帮助,我是 .NET 开发人员,但现在我想尝试 android。 我从这里下载了一个项目:https://github.com/gahfy/MVVMPosts
我遇到了 BaseViewModel.kt 的问题。 我知道 DaggerViewMOdelInjector 是由 dagger 2 使用我的界面 ViewModelInjector 创建的,但它没有创建,我无法构建项目,请帮助我!!
package net.gahfy.mvvmposts.base
import android.arch.lifecycle.ViewModel
import net.gahfy.mvvmposts.injection.component.DaggerViewModelInjector
import net.gahfy.mvvmposts.injection.component.ViewModelInjector
import net.gahfy.mvvmposts.injection.module.NetworkModule
import net.gahfy.mvvmposts.ui.post.PostListViewModel
import net.gahfy.mvvmposts.ui.post.PostViewModel
abstract class BaseViewModel:ViewModel(){
private val injector: ViewModelInjector = DaggerViewModelInjector
.builder()
.networkModule(NetworkModule)
.build()
init {
inject()
}
/**
* Injects the required dependencies
*/
private fun inject() {
when (this) {
is PostListViewModel -> injector.inject(this)
is PostViewModel -> injector.inject(this)
}
}
}
【问题讨论】:
-
我认为最好用构造函数注入来注入视图模型。看看这篇文章:proandroiddev.com/…
-
感谢您的评论,我是一个 android 的菜鸟,在这一刻,我想测试这个项目以了解更多这项技术。