前言:前段時(shí)間將Jetpack系列中的Room進(jìn)行講解后,今天再給大家講解下谷歌最新支持的視圖綁定控件尸执。
如有興趣可了解下本人的Jetpack系列文章:
Jetpack系列1——Room 數(shù)據(jù)庫
Jetpack系列2——ViewBinding數(shù)據(jù)綁定
1.ViewBinding介紹
- 谷歌推出替代FindviewByid枷踏、ButterKnife的插件,已在AndroidStudio3.6版本以上植入∷ⅲ可直接使用满葛。
2.ViewBinding使用
- 如何引用 :
在app模塊下的gradle文件中添加:
buildFeatures{
viewBinding=true
}
- 使用了ViewBinding以后径簿,創(chuàng)建的每一個(gè)xml文件都會(huì)生成對(duì)應(yīng)的Binding.java文件。該文件在build/generated/data_binding_base_class_source_out....目錄下)嘀韧,Bindin文件命名規(guī)則為:布局文件的駝峰命名法加上一個(gè)Binding后綴篇亭。
- Activity中使用ViewBinding的方式(以下代碼均為Kotlin):
val mBinding=ActivityMainBinding.inflate(layoutInflater)
setContentView(mBinding.getRoot())
- 如果想調(diào)用布局中的控件,通過mBinding.id的方式獲取到控件然后再進(jìn)行點(diǎn)擊锄贷、賦值等操作译蒂。
- Fragment中使用ViewBinding的方式:
Fragment中使用ViewBinding的方式.png
如果想調(diào)用布局中的控件曼月,也可以按照Activity中的使用方式進(jìn)行。