DataBinding使用记录:1、DataBinding的基本用法

本文介绍了Android DataBinding的基本概念和使用步骤,包括如何启用DataBinding,创建DataBinding布局,以及通过实战案例展示了如何告别findViewByid,声明并使用对象和变量,监听按钮点击事件,以及实现数据改变时视图自动更新的功能。文章最后进行了简单的总结,指出DataBinding支持单向和双向绑定,并鼓励读者深入学习。
摘要由CSDN通过智能技术生成

目录

一、DataBinding简单介绍

1、DataBinding是什么?

2、DataBinding的使用步骤

二、DataBinding实战操作

案例1、告别繁琐的findViewByid的操作【DemoActivity】

步骤1:添加语句启用 DataBinding

步骤2:新建一个默认空的 DemoActivity

步骤3:如何将传统布局转换为DataBinding布局?

步骤4:修改 setContentView 方法,使用binding可直接调用组件的id

案例2、声明使用对象和变量,进行组件数据操作【Demo2Activity】

步骤1:写一个实体对象Account

步骤2:在 DataBinding 布局中,声明使用Account

步骤3:在Activity里面对account对象进行初始化、赋值,并展示到布局界面上

案例3、监听按钮点击事件,改变文本内容【Demo3Activity】

步骤1:Databinding布局引入新的对象activity,然后为按钮设置点击事件

步骤2:在activity里面实现按钮点击事件,并实现相关业务

案例4、实现改变数据,视图自动更新【Demo3Activity】

步骤1:注释 setAccount 方法

步骤2:设置 Account 对象,通知自动更新

三、简单总结


一、DataBinding简单介绍

1、DataBinding是什么?

也就是说 DataBinding 是实现 mvvm 模式的一个工具,用来提供数据绑定服务。

 

2、DataBinding的使用步骤

要在我们的项目中实现 DataBinding,我们需要做到以下三步

第一步,启用 DataBinding,也就是让我们的项目支持 DataBinding

第二步,修改布局文件为 DataBinding 布局,也就是把传统的布局文件修改为 DataBinding 布局

第三步,进行数据绑定

 

二、DataBinding实战操作

案例1、告别繁琐的findViewByid的操作【DemoActivity】

步骤1:添加语句启用 DataBinding

在 app 的 build.gradle 里面,添加语句启用 DataBinding,Sync Now,这样我们的项目就支持 DataBinding了

android {
    
    ......

    //启用DataBinding
    dataBinding{
        enabled = true;
    }

}

如果项目里面有多个 Module 的情况,放在对应的 Module 的 build.gradle 文件里面

 

步骤2:新建一个默认空的 DemoActivity

public class DemoActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_demo);
    }
}

它的布局文件为 activity_demo

 

步骤3:如何将传统布局转换为DataBinding布局?

选中最外层的布局标识,按住 alt + enter 键,

就会提示我们将传统布局转换为DataBinding布局 (Convert to data binding layout),

点击 “Convert to data binding layout”,生成效果如下:

这样布局就转换为 DataBinding 布局了,我们发现它的最外层已经变为 layout

还新增了一个 data 标签

 

步骤4:修改 setContentView 方法,使用binding可直接调用组件的id

修改 setContentView 方法。当布局转换为 DataBinding 布局以后,系统会我们自动生成这样一个类 ActivityDemoBinding,

ActivityDemoBinding它的生存规则就是布局文件activity_demo变成大写ActivityDemo,然后拼接+Binding,

使用binding可直接调用组件的id

 

运行效果如下:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

被开发耽误的大厨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值