'by viewModels()' Kotlin 属性委托未解析的引用

新手上路,请多包涵

我正在尝试使用 kotlin 实现 viewmodel。首先,我添加了所需的依赖项:

 implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.core:core-ktx:1.2.0'
// ViewModel
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.2.0"
// Annotation processor
kapt "androidx.lifecycle:lifecycle-compiler:2.2.0"

然后我创建了一个简单的视图模型:

 class MyViewModel: ViewModel() {
    val greeting = "Hello World"
}

但是当我尝试使用 kotlin 属性委托从活动访问视图模型时:

 val model by viewModels<MyViewModel>()

编译器不解析 viewModels 。我不知道是什么问题。我错过了什么?

原文由 Toni Joe 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.3k
2 个回答

对我来说,上面的解决方案不起作用。

我需要导入:

 implementation 'androidx.navigation:navigation-fragment-ktx:2.3.5'

原文由 Thiago 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题