1. 程式人生 > >xml中Merge標籤使用

xml中Merge標籤使用

1.merge標籤中的子集是直接加到Activity的FrameLayout根節點下,(Activity檢視的根節點都是frameLayout).如果你所建立的Layout並不是用FramLayout作為根節點(而是應用LinerLayout等定義root標籤),就不能通過merge來優化UI結構.


2.當應用Include或者ViewStub標籤從外部匯入xml結構時,可以將被匯入的xml用merge作為根節點表示,這樣當被嵌入父級結構中後可以很好的將它所包含的子集融合到父級結構中,而不會出現冗餘的節點.
<merge xmlns:android="http://schemas.android.com/apk/res/android">  
  
    <Button  
        android:layout_width="fill_parent"   
        android:layout_height="wrap_content"  
        android:text="@string/add"/>  
  
    <Button  
        android:layout_width="fill_parent"   
        android:layout_height="wrap_content"  
        android:text="@string/delete"/>  
  
</merge>  
另外需要注意的是: 
a.<merge />只可以作為xml FrameLayout的根節點. 

b.當需要擴充的xml layout本身是由merge作為根節點的話,需要將被匯入的xml layout置於 viewGroup中,同時需要設定attachToRoot為True.     總之,<merge/>標籤在UI的結構優化中起著非常重要的作用,它可以刪減多餘的層級,優化UI。<merge/>多用於替換FrameLayout或者當一個佈局包含另一個時,<merge/>標籤消除檢視層次結構中多餘的檢視組。例如你的主佈局檔案是垂直佈局,引入了一個垂直佈局的include,這是如果include佈局使用的LinearLayout就沒意義了,使用的話反而
減慢你的UI表現。這時可以使用<merge/>標籤優化。


相關推薦

xmlMerge標籤使用

1.merge標籤中的子集是直接加到Activity的FrameLayout根節點下,(Activity檢視的根節點都是frameLayout).如果你所建立的Layout並不是用FramLayout作為根節點(而是應用LinerLayout等定義root標籤),就不能通過

mybatis配置檔案mapper.xmltrim標籤的用法

在mapper.xml中對statement的定義,可以用<trim>來填充和隱藏sql語句。 <!--修改user的statement--><update id="updateUser" parameterType="user">update user <

第14講 struts2struts.xml標籤配置

1複製專案,HeadFirstStruts2chapter02_06 改名:HeadFirstStruts2chapter02_07,同時修改web project settings 2修改HelloAction,name屬性,get() set()方法,package com.cruis

mybatis的mapper.xmlselect標籤的parameterType屬性

SqlSession的selectList()與selcetOne()的第二個引數和selectMap()的第三個引數都表示方法的引數 程式碼如下 Flower flower = session.selectOne("com.bjsxt.mapper.Flowe

pom.xmlbuild標籤

1.分類        (1)全域性配置(project build)                  針對整個專案的所有情況都有效        (2)配置(profile build)                  針對不同的profile配置 &

第14講 struts2struts.xml標籤配置

1複製專案,HeadFirstStruts2chapter02_06 改名:HeadFirstStruts2chapter02_07,同時修改web project settings 2修改HelloAction,name屬性,get() set()方法,package co

pom.xml各個標籤的意思

Maven 構件工程的屬性檔案 pom.xml檔案(實踐用): <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-ins

web.xmldispatcher標籤詳解

一、概念(RequestDispatcher)RequestDispatcher提供兩個方法forward和include區別都表示要跳轉到其他資源,不同的是,如果使用forward跳轉則後面的response輸出則不會執行,而用include來跳轉,則include的ser

在web.xml標籤的作用

1.啟動一個WEB專案的時候,容器(如:Tomcat)會去讀它的配置檔案web.xml.讀兩個節點: <listener></listener> 和 <context-param></context-param> 2.緊接著,容器建立一個ServletCont

Android 在string.xml使用標籤

專案中經常會出現下面的情況,一些靜態的文字,樣式不統一: 1.註冊代表您同意《xxx服務協議》。 2.Q:xxxxxxxx; A:xxxxxxxxx; 。。。。。 上面列出兩種情況 大家想在介面中作出這種樣式有什麼好的辦法麼。 用兩個textview來完成麼? nonono

Mybatis mapper.xml常用標籤詳解

一、SQL語句標籤: <?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"        "

web.xmltaglib標籤報錯問題解決方案

<taglib>標籤在web.xml檔案中報錯解決方法配置web.xml檔案時,taglib標籤報錯,但不會影響程式的執行,web.xml 如下:< xml version="1.0" encoding="UTF-8" ><web-app id

在web.xml標籤的作用是什麼?

今天看見一個Java專案的web.xml裡面有使用<context-param>標籤,於是百度了一下。將搜到的解決記錄在這裡,方便以後檢視。 1.啟動一個web專案的時候,容器(如:tomcat)會去讀它的配置檔案web.xml。讀兩個節點:<listen

關於AndroidManifest.xmlactivity標籤

        一般情況下,在新建一個activity後,為了使intent可以呼叫此活動,我們要在androidManifest.xml檔案中新增一個<activity>標籤,<activity>標籤的一般格式如下: <ac

idea+maven+Struts2 之struts.xml標籤介紹

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"

POM.XML的build標籤resources標籤

pom.xml中的兩種build 在Maven的pom.xml檔案中,存在如下兩種<build>: 說明: 一種<build>被稱為Project Build,即是<project>的直接子元素。另一種<build>被稱為Profile

servlet開發web.xmlload-on-start標籤作用

web.xml中<load-on-start>n</load-on-satrt>作用   如下面一段配置,我們再熟悉不過了:      我們注意到它裡面包含了這段配置:<load-on-startup>1</load-on-startup&g

如何理解tomcat的server.xmlhost、context的標籤配置

              網上有很多tomcat目錄下server.xml的配置的文章,但是對於初學者來說,如何理解host的標籤的配置內容確實一下轉不過彎。至少本人就是這個傻樣。     我希望我能幫助一些初學者去理解。先了解配置步驟,再理解配置的目的。        

web.xml配置servlet時url-pattern標籤到底是幹什麼的

以前配置web.xml都是自動生成的,昨天寫一個關於使用servlet生成驗證碼的過程中,碰到了一個問題。 就是在 <servlet> <description>&l

mybatis之mybatis-config.xml 配置標籤詳解

<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-con