[Android]Android布局优化之 merge

转载请标明:转载于http://www.cnblogs.com/Liuyt-61/p/6602915.html 

-----------------------------------------------------------------

>使用merge合并UI布局

作用:合并UI布局,使用该标签能降低UI布局的嵌套层次

场景(1):布局根结点是FrameLayout且不需要设置background或padding等属性,可用merge代替。

场景(2):某布局作为子布局被其他布局include时使用merge当作该布局的顶节点,这样在被引入顶节点会自动被忽略。

common_progress.xml

<?xml version="1.0" encoding="utf-8"?>
<merge xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <ProgressBar
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center" />

    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:text="请稍后" />
</merge>

-------------------------------------------------
main.xml
<?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 layout="@layout/common_title" />

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

        <TextView
            android:id="@+id/textView"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="正文内容"
            android:textSize="16sp" />

        <include layout="@layout/common_progress" />
    </FrameLayout>

</LinearLayout>
原文地址:https://www.cnblogs.com/Liuyt-61/p/6602915.html