一、include标签(布局重用)
1、说明:该标签的目的是解决重复定义布局的问题而诞生的,提高代码的复用。
2、使用方法:
<include android:id="@+id/my_title_ly"
android:layout_width="match_parent"
android:layout_height="wrap_content"
layout="@layout/my_title_layout" />my_title_layout.xml<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:id="@+id/my_title_parent_id"
android:layout_height="wrap_content" >
<ImageButton android:id="@+id/back_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/ic_launcher" />
<TextView android:id="@+id/title_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="20dp"
android:layout_toRightOf="@+id/back_btn"
android:gravity="center"
android:text="我的title"
android:textSize="18sp" />
</RelativeLayout>
include布局文件:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<include android:id="@+id/my_title_ly"
android:layout_width="match_parent"
android:layout_height="wrap_content"
layout="@layout/my_title_layout" />
</LinearLayout>
4、注意事项:
子控件抛出空指针的情况
include标签若指定了ID属性,而你的layout也定义了ID,则你的layout的ID会被覆盖。如果findViewById()查找layout的Id来查找子控件,会出现这种情况。
解决:不用上边的方法。可以直接查找子控件的id。或者查找include标签的id来查找子控件。
子控件抛出空指针的情况
include标签若指定了ID属性,而你的layout也定义了ID,则你的layout的ID会被覆盖。如果findViewById()查找layout的Id来查找子控件,会出现这种情况。
解决:不用上边的方法。可以直接查找子控件的id。或者查找include标签的id来查找子控件。

本文介绍Android开发中通过include标签实现布局复用的方法,有效减少重复代码,提高开发效率。文章详细展示了如何创建可复用的布局文件,并将其应用于不同场景。

548

被折叠的 条评论
为什么被折叠?



