Android Studio Kotlin 数据绑定:BR 上未解析的参考

Ran*_*ngy 4 data-binding kotlin android-studio

我有一些代码在 Android Studio 中生成“红色波浪线”错误:

@get:Bindable
var title: String = ""
    set(value) {
        field = value
        notifyPropertyChanged(BR.title)
    }
Run Code Online (Sandbox Code Playgroud)

它抱怨“标题”是BR.title. 不过,构建和运行工作正常,这是我能看到的唯一错误。我在那里调试并看到它BR.title正确地获得了值。

尽管如此,我还是不知道如何让它消失。我验证了生成的 BR 类具有“标题”字段,但 Android Studio 拒绝识别这一点。我查过有这个问题的人,并尝试了以下方法:(未成功)

  • 关闭 Android Studio,删除 .gradle、.idea 和 build 文件夹并重新启动
  • 构建 -> 清理项目,重建项目
  • 文件 -> 使缓存无效并重新启动
  • 禁用和启用 Kotlin 插件
  • 关闭并重新打开项目

我也检查过,我apply plugin: 'kotlin-kapt'在 build.gradle 中有。

有谁知道这是怎么回事?我认为它必须在某处保留一些缓存文件,但我不知道在哪里。

sya*_*ani 8

为我解决问题的是将以下导入添加到我的文件中:

import androidx.databinding.library.baseAdapters.BR
Run Code Online (Sandbox Code Playgroud)

我不完全确定这为什么有效,但它摆脱了所有分析问题,应用程序仍然可以编译并运行良好,所以我个人很高兴。