《第一行代码》阅读笔记(十七)——ViewBinding

我们在Android开发的过程中总是需要获取XML布局中的ViewId,以便给其赋值进行显示,早期我们只能使用 findViewById这个API,会导致很多的模版代码出现。2013年左右Android界大神 Jake Wharton开源了Butter Knife框架,通过Bind("viewid")方式方便开发者获取ViewId。近两年由于谷歌对Kotlin的支持,我们开始使用 Android Kotlin extensions。 在文件中导入布局文件直接引用viewId。无需做其他额外操作,最为方便。

目前,谷歌在 Android Studio 3.6 Canary 11 及更高版本中加入了新的视图绑定方式ViewBinding。
注意:要使用ViewBinding功能,AndroidStudio至少要升级到3.6。

导入依赖

在要使用ViewBinding的 module 的build.gradle文件中开启ViewBinding

android {
   ...
    viewBinding {
        enabled = true
    }
   ...
}

Android Studio 4.0 后,使用这个依赖会报以下错误
DSL element 'android.dataBinding.enabled' is obsolete and has been replaced with 'android.buildFeatures.dataBinding'

所以修改成如下配置

buildFeatures{
        viewBinding = true
    }
    dataBinding{
        enabled  true
    }

使用教程

这是一篇非常好的文章,转载给大家。
基于ViewBinding的BaseActivity封装尝试

当我们知道如何在Activity中使用viewbinding后,那Fragment和Adapter中呢?
Android 视图绑定(ViewBinding)在Activity、Fragment和Adapter中的用法(java)

如果在使用的过程中$\color{#FF0000}{不想}$为某个布局文件生成binding类,则可以使用如下属性添加到布局的根视图中

<LinearLayout
        ...
        tools:viewBindingIgnore="true" >
    ...
</LinearLayout>
posted @ 2020-07-23 23:59  朱李洛克  阅读(713)  评论(0编辑  收藏  举报
// 侧边栏目录 // https://blog-static.cnblogs.com/files/douzujun/marvin.nav.my1502.css