Android Jetpack 全家桶全面学习 | 使用databinding

使用databinding通过databinding功能,可以更轻松地编写可与视图交互的代码。在模块中启用 databinding 之后,系统会为该模块中的每个 XML 布局文件生成一个绑定类。绑定类的实例包含对在相应布局中具有 ID 的所有视图的直接引用。在大多数情况下,databinding 会替代 findViewById。启用 databinding,需要在模块的gradle文件中添加android { // .... dataBinding { enabled true }}
摘要由CSDN通过智能技术生成

使用databinding

通过databinding功能,可以更轻松地编写可与视图交互的代码。在模块中启用 databinding 之后,系统会为该模块中的每个 XML 布局文件生成一个绑定类。绑定类的实例包含对在相应布局中具有 ID 的所有视图的直接引用。

在大多数情况下,databinding 会替代 findViewById

启用 databinding,需要在模块的gradle文件中添加

android {
   
 // ....
 dataBinding {
   
 enabled true
 }
}

在 layout 中,添加<layout>标签。例如act_data_binding_1.xml文件。 其中包含了data标签与view标签,view 标签的内容就是不使用 DataBinding 时的普通布局内容

<layout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:app="http://schemas.android.com/apk/res-auto"
 xmlns:binding="http://schemas.android.com/tools"><!-- 根视图 -->
 <LinearLayout.... /></layout>

系统会通过以下方式生成绑定类的名称:将 XML(layout)文件的名称转换为驼峰式大小写,并在末尾添加“Binding”一词。 上面的xml会生成ActDataBinding1Binding类。我们可以直接使用这个类。

DataBindingAct1中,也需要调用setContentView

public class DataBindingAct1 extends AbsActivity {
   ActDataBinding1Binding binding;@Override
 protected void onCreate(Bundle savedInstanceState) {
   
 super.onCreate(savedInstanceState);
 binding = ActDataBinding1Binding.inflate
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值