使用合并标记

时间:2015-05-06 02:54:39

标签: android xml performance android-layout merge

抱歉,也许这个问题很愚蠢,但我想让它更清楚,因为Android Developer上的例子对我来说有点不清楚。

我理解它基本上是如何工作的,但仍然不确定某些事情。

  1. 合并并包含用于减少视图层次结构中视图/视图组数量的标记,因此我们可以使用xml布局的可重用部分。以下是Merge Android Developers Blog的示例。在此示例中使用Framelayout,我们可以在视图层次结构中使用另一个具有id / content的FrameLayout,但是没有使用此框架布局的示例。这是否意味着FrameLayout是容器,在xml
  2. 中看起来像这样
     <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
        android:id=”@+id/content>
        <include layout="@layout/our_merge_layout"/>
        </FrameLayout>
    

    当我们使用merge和include标记时,会自动创建带有内容ID的FrameLayout。

    1. 但是如果我们有相对定位怎么办,例如,我们应该将RelativeLayout保持为ViewGroup包装器,还是我们可以保存嵌套视图的所有属性(android:layout_below="@id/name",android:layout_alignParentLeft="true")但是在这种情况下我们必须仅包含此部分内部相对布局(在我们的例子中)以使其有效?我是对的吗?

    2. 使用合并代码或自定义视图更好?

    3. 如果有任何帮助,我将不胜感激。 请帮助理解这一点。 先感谢您。

1 个答案:

答案 0 :(得分:1)

这篇文章似乎正是您所需要的,所有问题都在这里提到Protip. Inflating layout for your custom view  请看一看。如果您有其他问题或有些事情不清楚,请询问。