JetPack学习笔记之DataBinding(三)
在编写布局文件的过程中,会遇到布局层次结构复杂或者布局文件在其他布局文件中可以复用的情况,此时我们会将布局文件抽象为一个单独的文件,在其他布局文件中通过include标签引入,此时通过include标签引入的布局文件就成为二级页面,而使用include标签的文件称为一级页面。前面介绍的是在一级页面中将将View与页面中的数据模型绑定的方法,下面介绍在二级页面中DataBinding的使用方法。
1、一级页面修改布局文件
<include layout="@layout/inner_content"
app:book = "@{book}"/>
2、二级页面使用方法如下:
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android">
<data>
<variable
name="book"
type="com.example.jetpackpro.databinding.Book" />
</data>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@{book.name}"/>
</LinearLayout>
</layout>
以上可以看出,除了一级页面中include标签需要定义一个app:book之外,二级页面中的使用方法与一级页面中没有什么不同。