我有一个包含多个Fragment的活动,希望通过共享ViewModel在这些Fragment之间共享数据。但是,当我像在Fragment中那样初始化ViewModel时,它不起作用并显示错误信息。请问如何正确地访问ViewModel(如果可能)?
val model : sharedViewModel by activityViewModels()
我尝试使用ViewModelProvider,但不知道如何正确使用它,因为我使用的是Kotlin编码。
我有一个包含多个Fragment的活动,希望通过共享ViewModel在这些Fragment之间共享数据。但是,当我像在Fragment中那样初始化ViewModel时,它不起作用并显示错误信息。请问如何正确地访问ViewModel(如果可能)?
val model : sharedViewModel by activityViewModels()
我尝试使用ViewModelProvider,但不知道如何正确使用它,因为我使用的是Kotlin编码。
by activityViewModels()
属性委托。此委托返回一个作用域为该Activity的ViewModel。by viewModels()
属性委托进行声明。由于它与viewModels()
相同,因此他们没有费心创建一个专门针对Activity的activityViewModels()
。
by viewModels()
声明它。在片段中,您可以使用by activityViewModels()
声明它。 - CommonsWare