DataBinding 使用教程 一
来源:互联网 发布:统计建模与r软件 编辑:程序博客网 时间:2024/06/07 11:43
databinding 是一个实现数据和数据和UI绑定的框架,是一个实现MVVM模式的工具
优点:避免findViewById setText setVisiable等操作控件的方法,可以直接在布局文件中声明和处理逻辑
缺点:太过依赖model,不成熟,api 变更大,没有得到很好的发展(从2015年7月引入,一年多了,没见得有好红火)
第一步 环境搭建
然后gradle同步一下,你会发现多出来几个架包依赖
mvvm 是Model-View-ViewModel的简写,也需要依赖模型,我们先构建一个model
package com.xuan.asange.databindingdemo;/** * Description * Company * author youxuan E-mail:xuanyouwu@163.com * date createTime:16/12/14 * version */public class User { private String name; private int age; public User(String name, int age) { this.name = name; this.age = age; } public User() { }}
databiding的实质是让数据填充处理在布局文件中
我们需要构建一个在布局文件中的全局变量
声明方式
<data>
<variable name="变量名" type="变量类型"/>
</data>
如:
<?xml version="1.0" encoding="utf-8"?><layout xmlns:android="http://schemas.android.com/apk/res/android"> <data> <variable name="user" type="com.xuan.asange.databindingdemo.User" /> </data> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@{user.name}" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@{String.valueOf(user.age)}" /> </LinearLayout></layout>
package com.xuan.asange.databindingdemo;import android.databinding.DataBindingUtil;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import com.xuan.asange.databindingdemo.databinding.ActivityMainBinding;public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //setContentView(R.layout.activity_main); ActivityMainBinding binding = DataBindingUtil.setContentView( this, R.layout.activity_main); User user = new User("阿三哥", 27); binding.setUser(user); }}
运行结果:
0 0
- DataBinding 使用教程 一
- DataBinding使用教程详解
- DataBinding使用教程(一):配置与基本使用
- DataBinding使用教程(一):配置与基本使用
- DataBinding使用笔记一
- Android DataBinding使用总结(一)
- DataBinding的基本使用(一)
- Android学习笔记之--------DataBinding使用一
- Android DataBinding(一) 基本使用
- Android DataBinding 项目使用介绍(一)
- Android DataBinding使用详解(一)
- DataBinding(一)
- DataBinding使用
- DataBinding使用
- DataBinding 使用
- DataBinding使用教程(二):xml标签详解
- DataBinding使用教程(三):各个注解详解
- DataBinding使用教程(四):BaseObservable与双向绑定
- Spring构造函数注入的问题
- 如何在Linux环境创建GRE Tunnel
- js构建集合对象数据,java Gson直接转出对象类型的list接收
- 粒子滤波计算过程
- php二分查找法实例
- DataBinding 使用教程 一
- smail格式
- Python selenium
- Sed 与Awk (第二版)学习笔记
- c++头文件
- 【转】汉字编码常识
- Mac电脑上安装多版本的Python
- ORA-14400: 插入的分区关键字未映射到任何分区
- 常用 Git 命令清单