我正在通过引用 https://developer.android.com/topic/libraries/data-binding/index.html 使用 DataBinding 编写 Android 应用程序.
但是在构建我的项目时,它在生成的类中显示错误为
> '/databinding/DataBinderMapper.java:10: error: constant expression
> required.'
此错误发生在生成的类 DataBinderMapper.java 内的 switch 语句中(此文件是用于数据绑定(bind)的自动生成文件)
有人知道自动生成的 buld 文件中发生此 java switch case 错误的原因吗?
编辑: 我发现此问题的原因是,在 R.java 文件中创建的布局引用对于这种情况不是最终的。 例如,在我的例子中,R.java 中的布局引用是
public static int activity_main=0x7f04001c;
其实应该是
public static final int Activity_main=0x7f04001b;
但我不知道发生这种情况的原因以及如何将其更改为最终。
最佳答案
您要绑定(bind)的模型的变量中可能有 Final 修饰符。
关于Android数据绑定(bind)构建错误: constant expression required,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46198882/