使用数据绑定时将 xml 代码放入 <layout></layout> 导致构建失败
Build failed by placing xml code inside <layout></layout> while using databinding
我想在基于 codelab courses 的 recyclereview 行中使用数据绑定。我现在所取得的成就是在行上显示数据,并为项目行设置视图绑定。我有一个名为 layout_row_lesson.xml
的 xml 行,它生成了绑定 class LayoutRowLessonBinding
并且适配器中的数据正确设置为视图。
我的xml是这样的
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout>
.
.
<SomeViews>
.
.
</androidx.constraintlayout.widget.ConstraintLayout>
但是当我尝试使用数据绑定并将我的 xml 更改为这样的东西时出现错误
<?xml version="1.0" encoding="utf-8"?>
<layout>
<androidx.constraintlayout.widget.ConstraintLayout>
.
.
<SomeViews>
.
.
</androidx.constraintlayout.widget.ConstraintLayout>
</layout>
如您所见,将我的代码放在 <layout>
和 </layout>
之间并尝试重建应用程序后,此错误显示
...\app\databinding\LayoutRowLessonBinding.java:18: error: cannot find symbol
public abstract class LayoutRowLessonBinding extends ViewDataBinding {
我解决但没有成功的是:
1. 使缓存失效并重启
2.重命名布局文件名
3. 清理和重建
4.重启android工作室
5.删除构建文件夹
并清除视图绑定已启用:
viewBinding {
enabled = true
}
我忘了启用数据绑定
dataBinding {
enabled = true
}
我想在基于 codelab courses 的 recyclereview 行中使用数据绑定。我现在所取得的成就是在行上显示数据,并为项目行设置视图绑定。我有一个名为 layout_row_lesson.xml
的 xml 行,它生成了绑定 class LayoutRowLessonBinding
并且适配器中的数据正确设置为视图。
我的xml是这样的
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout>
.
.
<SomeViews>
.
.
</androidx.constraintlayout.widget.ConstraintLayout>
但是当我尝试使用数据绑定并将我的 xml 更改为这样的东西时出现错误
<?xml version="1.0" encoding="utf-8"?>
<layout>
<androidx.constraintlayout.widget.ConstraintLayout>
.
.
<SomeViews>
.
.
</androidx.constraintlayout.widget.ConstraintLayout>
</layout>
如您所见,将我的代码放在 <layout>
和 </layout>
之间并尝试重建应用程序后,此错误显示
...\app\databinding\LayoutRowLessonBinding.java:18: error: cannot find symbol
public abstract class LayoutRowLessonBinding extends ViewDataBinding {
我解决但没有成功的是:
1. 使缓存失效并重启
2.重命名布局文件名
3. 清理和重建
4.重启android工作室
5.删除构建文件夹
并清除视图绑定已启用:
viewBinding {
enabled = true
}
我忘了启用数据绑定
dataBinding {
enabled = true
}