【问题标题】:Databinding: Android Studio not recognizing view model class as type value (cannot resolve symbol issue)数据绑定:Android Studio 无法将视图模型类识别为类型值(无法解决符号问题)
【发布时间】:2018-11-10 05:42:35
【问题描述】:

我正在尝试让数据绑定正常工作,但这太麻烦了。只是似乎无法让我的视图模型连接到我的布局文件。 在我的标签下的布局文件中,我以这种方式引用我的视图模型:

  <data>

    <variable
        name="viewModel"
        type="com.xxx.xxx.controller.mvvm.DashBoardResultsViewModel" />

</data>

但不知何故,我无法编译我的项目。我的 IDE 一直告诉我“无法解析符号 ....DashBoardResultsViewModel”,即使该类在那里。

包名和类名正确。

无论我做什么:清理,重建项目。使缓存无效并重新启动...类名无法识别。

运行 Android Studio 3.1.2。在我的所有模块中,数据绑定都设置为 true。

帮助!:)

【问题讨论】:

    标签: android mvvm android-databinding


    【解决方案1】:

    原来是数据绑定将自动生成的文件放在了错误的模块中,因此找不到类。

    我从另一个模块中删除了数据绑定是真的,这让我的项目最终编译并再次运行......虽然这显然不是你想要解决这个问题的方式。好像是数据绑定框架的bug?

    在我的 xml 布局文件中,我仍然收到关于我的 viewmodel 类的引用的“无法解析”错误通知,但我的项目编译并运行得非常少。

    【讨论】:

      【解决方案2】:

      我刚刚公开了我的数据成员,现在它正在工作

      【讨论】:

        【解决方案3】:

        我通过添加来修复它

        @Keep
        

        对我的 ViewModel 的注释

        例如:

        @Keep
        class LoginViewModel : ViewModel() {
            // TODO: Implement the ViewModel
        }
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2014-11-04
          • 1970-01-01
          • 2020-05-14
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多