Android viewBinding的使用

在我们开发的过程中,由最初的findviewByid 演练为后来的Butter Knife

节省了代码的空间提升了效率又减少了空指针等的异常

直到Android大神 Jake Wharton开源了Butter Knife框架,通过Bind方式绑定获取ViewId

但是要注意,要使用ViewBinding,需要将AndroidStudio升级到3.6以上可使用!

1.使用流程

首先在Moudle:app下加入下面依赖:

android括号中:

Android viewBinding的使用

android { …………… viewBinding { enabled = true } …………… }

  • 如果在使用的过程中开发者不想为某个布局文件生成binding类,则可以使用如下属性添加到布局的根视图中即可:

Android viewBinding的使用

这个类名称的命名规则为:XML布局文件名去掉下划线,下划线首字母大写,最后加上Binding。例如我有一个布局文件activity_main.xml,那对应生成的类文件为ActivityMainBinding.java。

生成的类文件位于Module路径: build\generated\data_binding_base_class_source_out\debug\out\包名\databinding下。

Android viewBinding的使用

那就可以直接使用对象实例访问了,如下代码所示:

Android viewBinding的使用

以上就是实现ViewBinding的全过程啦,

不过ViewBinding的功能还不够完善,比如XML中使用了 include标签时无法对view进行引用。但是相比较于 findViewById 和 Butter Knife两种方式还是方便很多的。而且 ViewBinding 在使用的过程中不存在类型转换以及空指针异常的问题