ViewBinding和DataBinding都是Android开发中的数据绑定框架,它们可以将布局文件中的视图与代码中的变量绑定起来,从而方便地操作视图和数据。
ViewBinding是Android官方在Android Studio 3.6中推出的一个新特性,它通过生成一个与布局文件对应的绑定类来实现视图绑定,可以避免findViewById的繁琐操作,提高代码的可读性和可维护性。
DataBinding是Google在Android Studio 1.3中推出的一个数据绑定框架,它可以将数据与视图绑定起来,实现双向绑定,从而简化了代码的编写和维护。使用DataBinding可以将视图的属性和数据模型的属性绑定起来,当数据模型的属性发生变化时,视图会自动更新,反之亦然。
总的来说,ViewBinding适用于简单的视图绑定场景,而DataBinding则适用于更复杂的数据绑定场景。
ViewBinding使用:
1、确保你的Android Studio是3.6或更高的版本;
2、在build.gradle(app)中加入:
buildFeatures {
viewBinding true
}
3、在Activity的类下声明ActivityMainBinding
private lateinit var binding: ActivityMainBinding
4、在onCreate中调用inflate并赋值
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = ActivityMainBinding.inflate(layoutInflater)
setContentView(binding.root)
... //其他代码
}
5、在需要控件的时候,可以通过binding.控件id名进行调用: