【发布时间】:2017-09-13 13:27:49
【问题描述】:
我正在通过引用 https://developer.android.com/topic/libraries/data-binding/index.html 使用 DataBinding 编写 Android 应用程序。
但是在构建我的项目时,它在生成的类中显示错误
> '/databinding/DataBinderMapper.java:10: error: constant expression
> required.'
这个错误发生在生成类DataBinderMapper.java中的switch语句中(这个文件是一个自动生成的数据绑定文件)
有人知道自动生成的 buld 文件中发生此 java switch case 错误的原因吗?
修改: 我发现这个问题的原因是,在 R.java 文件中创建的布局引用对于这种情况不是最终的。 例如,在我的例子中,R.java 中的布局参考是
public static int activity_main=0x7f04001c;
其实应该是的
public static final int activity_main=0x7f04001b;
但我不知道发生这种情况的原因以及如何将其更改为 final。
【问题讨论】:
-
你尝试过干净的构建吗?
-
是的,但是同样的错误
标签: android android-layout data-binding