未解决的参考:Android Studio 4.1.3 中的数据绑定

Posted

技术标签:

【中文标题】未解决的参考:Android Studio 4.1.3 中的数据绑定【英文标题】:Unresolved reference: databinding in Android studio 4.1.3 【发布时间】:2021-07-23 22:04:15 【问题描述】:

在遵循 SO 中的很多答案和其他要解决的答案后,我面临着一种有线行为,但仍然坚持下去。

我已添加到应用 Gradle

  buildFeatures 
    dataBinding true

我的 activity_main.xml 被布局包裹

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

<fragment xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/map"
    android:name="com.google.android.gms.maps.SupportMapFragment"
    android:layout_
    android:layout_
    tools:context=".ui.home.MainActivity" />
  </layout>

我也尝试将这些添加到 gradle.properties

android.databinding.enableV2=true
android.useAndroidX=true

我已经有了

android.useAndroidX=true
android.enableJetifier=true

打开活动时它没有显示错误,并且在将名称更改为另一个名称时它似乎也已生成但每当我运行时都会出现此错误

Unresolved reference: databinding

我该如何解决这个问题?

**更新 1 我已经多次清理和构建,关闭并打开了 android studio,以及 Invalidate Cache/Restart。

【问题讨论】:

你有没有解决这个问题,我现在也面临同样的问题? 【参考方案1】:

将其添加到 gradle 文件后:

buildFeatures 
    dataBinding true

确保单击“立即同步”。否则无法进行下一步。

下一步,在 xml 文件中,打开

<androidx.constraintlayout.widget.YourAppLayout xmlns:android="http://schemas.android.com/apk/res/android"

右击,你会得到这个菜单:

点击“转换为数据绑定布局”。你应该准备好了

【讨论】:

【参考方案2】:

请注意,使用数据绑定时,视图 ID 会更改名称,如下所述:https://developer.android.com/codelabs/kotlin-android-training-data-binding-basics#2

第 4 步:使用绑定对象替换对 findViewById() 的所有调用 您现在可以将所有对 findViewById() 的调用替换为对 绑定对象中的视图。当绑定对象是 创建后,编译器会在绑定中生成视图的名称 来自布局中视图 ID 的对象,将它们转换为 骆驼案。因此,例如 done_button is doneButton 在绑定中 对象

【讨论】:

【参考方案3】:

请转到文件->使缓存无效/重新启动->无效并重新启动

【讨论】:

以上是关于未解决的参考:Android Studio 4.1.3 中的数据绑定的主要内容,如果未能解决你的问题,请参考以下文章

未解决的参考:Android Studio 4.1.3 中的数据绑定

未解决的参考 - 活动无法识别 android studio v4 中的合成导入

尝试使用“new View.OnClickListener”时,Android Studio 中出现错误(未解决的参考)[关闭]

升级到 Android Studio 3.0 + Gradle 4.1 遇到的一些坑及解决方案

Android Studio 4.1一键生成代码Template

Android Studio 4.1一键生成代码Template