我无法在 Android Studio 中设置 viewBinding

I'm unable to set the viewBinding in Android Studio

提问人:Danilo Volles 提问时间:8/23/2023 最后编辑:Danilo Volles 更新时间:8/23/2023 访问量:123

问:

我在这个问题上卡住了 5 天! 我无法在Android Studio中使用viewBinding子句绑定视图,我相信问题出在“build.gradle”文件中。

最初,我试图以我所知道的方式构建项目:

buildFeatures { viewBinding true }

但它没有用......我去了 Android 官方页面查看,显然他们将语法更改为:

viewBinding { enabled = true }

即便如此,它还是显示了一个错误:“enabled”一词被替换,并且不让 gradle 构建程序。

我也试过:

viewBinding { enable = true }
viewBinding { enable }
viewBinding { enable true }
 
buildFeatures { viewBinding { enabled = true } }
buildFeatures { viewBinding.isEnabled } 
 
// Among numerous other possibilities...

我还尝试在gradle.properties中全局定义viewBinding:

android.viewBinding.enabled=true

没用。

我也看了进口:

import com.example.mvvmstudy.databinding.ActivityMainBinding
// The mistake does not seems to be here

同样,我尝试验证 gradle 版本,但它似乎是最新的,我正在使用带有 8.1.1 插件的 8.3 版。

可能是什么问题?? 我已经多次重建该项目,我做了另外 2 个新项目,问题仍然存在哈哈哈哈哈哈

该项目只是 MVVM 如何工作的示例,我定义了一个按钮只是为了设置 Toast 并查看绑定工作,但我无法做到......

存储库:https://github.com/DaniloVolles/MVVMStudy

我已经看到了: 1 - 当我在 Android Studio 的 gradle 中添加 viewBinding 时,出现错误

2 - viewBinding enabled true 和 buildfeatures viewBinding true 有什么区别

3 - 无法访问 viewBinding

还有一些其他的,但都没有奏效......

Android Kotlin build.gradle android-viewbinding 视图绑定

答:

2赞 Pratik Fagadiya 8/23/2023 #1

在 中,语法与 Groovy 不同。以下是使用 Gradle Kotlin DSL 在 Android 项目中启用视图绑定的正确方法:Gradle Kotlin DSL (KTS)

buildFeatures {
        viewBinding = true
}

而不是

buildFeatures {
        viewBinding true
}

在 Gradle Kotlin DSL 中,使用运算符完成分配。=

欲了解更多信息,您可以在这里找到: https://developer.android.com/topic/libraries/view-binding#setup

对于 Gradle Kotlin DSL (KTS):https://developer.android.com/build/migrate-to-kotlin-dsl#prefix-boolean