未知数据绑定 Class

Unknown DataBinding Class

我是 Android 中 DataBinding 的新手,正在自学。我刚刚在我的应用 Gradle 文件中 Android 标签中启用了 DataBinding 为:

    dataBinding{
        enabled=true
    }

我的 XML 是这样设置的:

<?xml version="1.0" encoding="utf-8"?>
<layout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools">

    <RelativeLayout
        tools:showIn="@layout/activity_main"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <TextView
            android:id="@+id/text"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Hello World!"/>

    </RelativeLayout>
</layout>

我的 Activity 看起来像:


问题是 ActivityMainBinding Class 对于 Android Studio 是未知的。我不知道为什么会这样。因为我已经干净了,所以重新构建 make 项目,但一切都没有帮助我!

我也附上了一个[截图][1],看截图你可以发现ActivityMainBinding红色

如果您的布局命名为 activity_main.xml,它只会被命名为 ActivityMainBinding

这很奇怪,因为它是 ANDROID 工作室!

我所做的只是将 activity_main.xml 的名称更改为 activity_main_.xml 然后我制作项目!

制作项目后,我恢复了旧名称,即 activity_main.xml,它就像一个魅力。不知道,但它确实有效,因为这个 GooF Android Studio 甚至没有任何意义!

这是因为您在 content_main.xml 中使用了 <layout> 属性。因此,您的绑定 class 名称将是 ContentMainBinding。

您还需要将 R.layout.content_main 设置为 DataBindingUtils class。

只需在 activity_main.xml 中添加 <layout> 并从 content_main.xml 中删除并保持其余代码不变。只需重建项目。