未生成数据绑定类
Posted
技术标签:
【中文标题】未生成数据绑定类【英文标题】:Data Binding class not generated 【发布时间】:2017-01-21 19:49:47 【问题描述】:我在我的项目中使用数据绑定,在我的xml绑定类中使用<layout>
和<data>
时没有生成。
例如我有activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android">
<data> </data>
<RelativeLayout
android:layout_
android:layout_>
</RelativeLayout>
</layout>
现在,如果我在我的活动/片段中写 ActivityMainBinding
,它会显示错误,即类不可用。但是在我的xml文件中包含<variable>
之后,它能够生成ActivityMainBinding
类。
Android Studio:2.1.3 类路径:com.android.tools.build:gradle:2.1.3 minSdkVersion 16 targetSdkVersion 24 buildToolsVersion 24.0.0
【问题讨论】:
在你的 build.gradle 中是dataBinding.enabled
吗?
我认为这是一个已知错误。您可以在尝试访问ActivityMainBinding
之前尝试构建您的项目,或者它必须与this 错误有关。
@pskink 是的,这就是为什么它在 xml 中添加 <variable>
后生成绑定类
@Amylinn 在构建我的项目后生成它,但我的问题是当我写<variable>
时,它生成绑定类而不构建项目。
我对真正的问题感到困惑?如果添加 我生成了所有类,但 Android Studio 没有看到它们并将它们标记为无效导入。运行 gradle sync 解决了这个问题。
【讨论】:
【参考方案2】:我遇到了同样的问题。我在重构时犯了一个错误。 autogen 绑定类的名称来自 xml 布局文件。
fragment_name.xml -> FragmentNameBinding
【讨论】:
【参考方案3】:检查接受答案中的所有原因后,请确保与 file.xml 中的确切命名匹配。就我而言,我的布局名称中有一个小错字。
【讨论】:
以上是关于未生成数据绑定类的主要内容,如果未能解决你的问题,请参考以下文章