我想开始在Kotlin项目中使用MVVM。
在应用模块的build.gradle
中,我有:
implementation "android.arch.lifecycle:common-java8:1.1.0"
implementation "android.arch.lifecycle:extensions:1.1.0"
kapt "android.arch.lifecycle:compiler:1.1.0"
在我拥有的项目的build.gradle
中:
repositories {
jcenter()
maven {
url "https://plugins.gradle.org/m2/"
}
google()
}
然后我有:
class MainActivityViewModel @Inject constructor(
private val view: MainActivityView
) : android.arch.lifecycle.viewmodel.ViewModel {
,但ViewModel并未被认为是符号
我也尝试了: 实现" android.arch.lifecycle:ViewModel:1.1.0"
并且它也不起作用。
缺少什么?
添加以下依赖项,它应该有效:
implementation "android.arch.lifecycle:runtime:1.1.0"
implementation "android.arch.lifecycle:extensions:1.1.0"
kapt "android.arch.lifecycle:compiler:1.1.0"
如果要从项目中的另一个模块中使用这些,则使用api
而不是implementation
。
将其添加为依赖项
implementation "android.arch.lifecycle:viewmodel:1.1.0"