前言:前段时间将Jetpack系列中的Room进行讲解后,今天再给大家讲解下谷歌最新支持的视图绑定控件。
如有兴趣可了解下本人的Jetpack系列文章:
Jetpack系列1——Room 数据库
Jetpack系列2——ViewBinding数据绑定
1.ViewBinding介绍
- 谷歌推出替代FindviewByid、ButterKnife的插件,已在AndroidStudio3.6版本以上植入。可直接使用。
2.ViewBinding使用
- 如何引用 :
在app模块下的gradle文件中添加:
buildFeatures{
viewBinding=true
}
- 使用了ViewBinding以后,创建的每一个xml文件都会生成对应的Binding.java文件。该文件在build/generated/data_binding_base_class_source_out….目录下),Bindin文件命名规则为:布局文件的驼峰命名法加上一个Binding后缀。
– Activity中使用ViewBinding的方式(以下代码均为Kotlin):
val mBinding=ActivityMainBinding.inflate(layoutInflater)
setContentView(mBinding.getRoot())
- 如果想调用布局中的控件,通过mBinding.id的方式获取到控件然后再进行点击、赋值等操作。
– Fragment中使用ViewBinding的方式:

Fragment中使用ViewBinding的方式.png
-
如果想调用布局中的控件,也可以按照Activity中的使用方式进行。
-
参考文章:https://www.jianshu.com/p/66728b95baaa