[使用数据绑定时通过将xml代码放在 内而生成失败

问题描述 投票:0回答:1

我想在基于codelab courses的recyclereview行中使用数据绑定。我现在实现的是在具有项目绑定的视图绑定的行上显示数据。我有一个名称为layout_row_lesson.xml的xml行,它生成了绑定类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 studio5.删除构建文件夹

并清除viewbind已启用:

 viewBinding {
        enabled = true
    }
android android-databinding
1个回答
0
投票

我忘了启用数据绑定

 dataBinding {
        enabled = true
 }
© www.soinside.com 2019 - 2024. All rights reserved.