Data Binding的中 include 标签的使用

inclune使用和原来一样,但要如何使数据也在 include中使用呢?

先看看我的布局文件

include的布局文件,也要使用 <layout>标签

<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"> <data> <variable
name="userInfo"
type="com.zhangqie.databinding.demo10.UserInfo" />
</data> <LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"> <TextView
android:id="@+id/tv_tow_mls"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@{userInfo.dataName}" /> <Button
android:id="@+id/btn_demo10_include"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="include 下的点击" />
</LinearLayout> </layout>

来看看主布局

<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"> <data> <variable
name="userInfo"
type="com.zhangqie.databinding.demo10.UserInfo" /> </data> <LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"> <TextView
android:id="@+id/tv_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@{userInfo.dataName}" /> <Button
android:id="@+id/btn_demo10"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="测试" /> <include
android:id="@+id/demo10_ainclude"
layout="@layout/include_test"
app:userInfo="@{userInfo}" /> </LinearLayout>
</layout>

include 中需要把 userinfo对象传给他;

也要给include 添加一个id值

来看看java代码:

public class InCludeActivity extends AppCompatActivity {

    Demo10Binding demo10Binding;

    @Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
demo10Binding = DataBindingUtil.setContentView(this,R.layout.demo10);
initView();
} private void initView(){ UserInfo userInfo = new UserInfo("zhangqie"); demo10Binding.setUserInfo(userInfo); demo10Binding.demo10Ainclude.tvTowMls.setText("访问include 中的id"); demo10Binding.demo10Ainclude.btnDemo10Include.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(InCludeActivity.this,"123",Toast.LENGTH_LONG).show();
}
});
}
}

通过已上介绍应该可以简单了解databinding中 include的使用了

android -------- Data Binding的使用 ( 五) include的更多相关文章

  1. Android Data Binding

    Android官方数据绑定框架DataBinding, 1.什么是DataBinding 2.DataBinding基础用法 3.DataBinding原理 4.表达式 5.null检查 6.incl ...

  2. android data binding jetpack I 环境配置 model-view 简单绑定

    android data binding jetpack VIII BindingConversion android data binding jetpack VII @BindingAdapter ...

  3. Android Data Binding代码实践(告别findViewById)(四)

    Data Binding实战(一) Data Binding语法解析(二) Data Binding高级用法(三) 好了,继前三篇学习了Data Binding之后,我们可以发现它的强大之处有这么几点 ...

  4. Android Data Binding实战(一)

    在今年Google I/O大会上,Google推出Design Library库的同时也推出了Android Data Binding,那么什么是Data Binding?其名曰数据绑定,使用它我们可 ...

  5. Android Data Binding Library

    Data Binding Library Data Binding Library是一个支持库,允许您使用声明格式(而不是编程)将布局中的UI组件与应用程序中的数据源绑定. 布局通常在调用UI框架方法 ...

  6. Android Data Binding(数据绑定)用户指南

    Android Data Binding(数据绑定)用户指南 http://www.jianshu.com/p/b1df61a4df77 https://github.com/LyndonChin/M ...

  7. android data binding jetpack VIII BindingConversion

    android data binding jetpack VIII BindingConversion android data binding jetpack VII @BindingAdapter ...

  8. android data binding jetpack VII @BindingAdapter

    android data binding jetpack VIII BindingConversion android data binding jetpack VII @BindingAdapter ...

  9. android data binding jetpack VI 清理一些概念。BR 运算表达式

    android data binding jetpack VIII BindingConversion android data binding jetpack VII @BindingAdapter ...

随机推荐

  1. Django 创建项目笔记

    基本命令 mkdir mysite # 创建项目目录,常取名mysite cd mysite virtualenv env # env\Scripts\activate.bat # Win pip i ...

  2. Java 使用命令对堆线程分析

    一.dump基本概念 在故障定位(尤其是out of memory)和性能分析的时候,经常会用到一些文件来帮助我们排除代码问题.这些文件记录了JVM运行期间的内存占用.线程执行等情况,这就是我们常说的 ...

  3. 【模板】关于c++的代码模板

    收集了点代码模板,现在整理在这里. 目录: 大数阶乘 高精度(大数乘小数) 高精度(大数乘大数) 高精度(加法) 高精度(减法) 进制转化 最大公约数 最小公倍数 组合序列 未完待续

  4. SAP字段与表的对应关系

    SAP字段与表的对应关系   MASTER DATA-主数据 Customer Master KNA1                         Customer Basic Data KNB1 ...

  5. 最简单的服务器和客户机(python3的编码与解码问题)

    在学习python的过程中,我越来越感觉到python2和python3之间有很多不同点,最近发现的一点就是编码问题. 在代码清单14-1和14-2中,因为作者是用python2来写得,然后我是用py ...

  6. python实现八皇后问题

    import random def judge(state, nextX): #判断是否和之前的皇后状态有冲突 nextY = len(state) for i in range(nextY): if ...

  7. C# 用面向对象的思想去编程

    再接上一篇博文,之前写的两篇博文虽然实现了功能,但是和控件之间的粘性太大,依赖于控件进行操作,所以这篇博文主要用面向对象的思想做一个Demo,将逻辑层与显示层剥离开 首先新建一个窗体文件,搭建界面完毕 ...

  8. tarjan 缩点(模板)

    描述: 给定一个n个点m条边有向图,每个点有一个权值,求一条路径,使路径经过的点权值之和最大.你只需要求出这个权值和. 注:允许多次经过一条边或者一个点,但是,重复经过的点,权值只计算一次. 思路: ...

  9. VirtualBox-- 虚拟机网络设置2--主机与虚拟机互相访问且均上外网

    转载自:http://blog.sina.com.cn/s/blog_7de9d5d80100t2uw.html   VirtualBox中有4中网络连接方式:NATBridged AdapterIn ...

  10. python 协程 demo

    # -*- coding: UTF- -*- import gevent from gevent import socket from gevent import event rev=socket.s ...