kotlin中使用ViewBinding綁定控件的方法
kotlin中使用ViewBinding綁定控件
什么是ViewBinding?
- View Binding是Android Studio 3.6推出的新特性,主要用于減少findViewById的冗余代碼,但內部實現還是通過使用findViewById。通過ViewBinding,可以更輕松地編寫可與視圖交互的代碼。在模塊中啟用ViewBinding之后,系統(tǒng)會為該模塊中的每個 XML 布局文件生成一個綁定類,綁定類的實例包含對在相應布局中具有 ID 的所有視圖的直接引用。
- 在之前的項目中我們可以通過kotlin-android-extensions插件來綁定View控件的,很遺憾在Android Studio 4.1之后kotlin-android-extensions插件已被廢棄,現在推薦使用ViewBinding來進行替代。
- 注意:視圖綁定在 Android Studio 3.6 Canary 11 及更高版本中可用
配置ViewBinding
- 在app級別的build.gradle中的android閉包中添加buildFeatures,設置viewBinding 為 true
android {
namespace xxx
compileSdkVersion versions.compileSdk
defaultConfig {
...
}
compileOptions {
...
}
buildFeatures{
viewBinding true
}
}配置完成后 Sync一下gradle,編譯項目后會在build→generated→data_binding_base_class_source_out文件中生成相應的類。Binding類的命名規(guī)則是將布局文件按駝峰方式重命名后,再加上Binding作為結尾。例如,我們activity_main.xml布局對應的Binding類就是ActivityMainBinding。

如果有些布局文件你不希望為它生成對應的Binding類,可以在該布局文件的根元素位置加入tools:viewBindingIgnore="true"

使用ViewBinding
在Activity使用viewbing,如下代碼所示。注意:我們需要先Binding類的getRoot方法獲取到對應布局文件的根元素,然后將其傳入到setContentView方法中,否則設置監(jiān)聽事件會無法生效
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
//初始化ViewBinding控件
var myBinding = ActivityMainBinding.inflate(layoutInflater)
//把根元素的對象作為參數傳入到setContentView()方法中
setContentView(myBinding.root)
//botton是activity_main.xml中的一個按鈕id
myBinding.botton.setOnClickListener {
//Code Logic
}
}
}到此這篇關于kotlin中使用ViewBinding綁定控件的文章就介紹到這了,更多相關kotlin使用ViewBinding綁定控件內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Android組件創(chuàng)建DrawerLayout導航
這篇文章主要為大家詳細介紹了Android組件創(chuàng)建DrawerLayout導航的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-01-01
Android onTouchEvent事件中onTouch方法返回值(介紹)
下面小編就為大家?guī)硪黄狝ndroid onTouchEvent事件中onTouch方法返回值(介紹)。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-04-04
Android Studio 3.0被調方法參數名提示的取消方法
這篇文章主要介紹了去掉android studio 3.0被調方法參數名提示的解決方法,在文章末尾給大家補充介紹了Android Studio 3.0 gradle提示太老的解決方法,非常不錯,需要的朋友可以參考下2017-11-11
Android Studio報錯unable to access android sdk add-on list解決方案
這篇文章主要介紹了Android Studio報錯unable to access android sdk add-on list解決方案,本文通過多種方式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-03-03
Android彈出DatePickerDialog并獲取值的方法
這篇文章主要為大家詳細介紹了Android彈出DatePickerDialog并獲取值的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-05-05
Android中調用系統(tǒng)的文件瀏覽器及自制簡單的文件瀏覽器
這篇文章主要介紹了Android中調用系統(tǒng)自帶的文件瀏覽器及自制簡單的文件瀏覽器的方法,這里的例子僅展示瀏覽而沒有添加復制粘貼剪切等文件管理操作,非常簡單,需要的朋友可以參考下2016-04-04

