Certains de clarifier l'utilisation de <include> et <fusion>

J'ai juste besoin de quelqu'un pour me dire si j'ai bien compris lors de l'utilisation de <include> et quand <merge>.

Donc, je fais une mise en page d'en-tête que je veux inclure dans un autre XML mise en page:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Header text" />
</LinearLayout>

Et je l'inclus dans un autre XML de cette façon (ce qui est assez de base):

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <include
        android:id="@+id/header"
        layout="@layout/top"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" />
</LinearLayout>

Cela fonctionne bien, pas de problème à ce sujet. Mais dans le but d'optimiser le code, je dois utiliser <merge> dans la mise en page qui est inclus. Ainsi, le top layout ne devrait pas avoir un tag <LinearLayout> mais elle doit ressembler à ceci:

<merge xmlns:android="http://schemas.android.com/apk/res/android">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Header text" />
</merge>

Ai-je bien compris cela correctement?

  • Ya ça a l'air bon. Bien que, dans mon expérience, je n'ai pas besoin de fusion. Je ne peux pas il suffit de placer le texte à afficher dans son propre fichier xml et d'inclure ce fichier. Pas de fusion nécessaire.
  • Oui, il fonctionne, mais est-ce vraiment sûr de l'utiliser de cette façon parce que les développeurs de Google n'a jamais affirmé une telle pratique. J'ai peur qu'arriverait-il s'ils décident de changer quelque chose qui reconnaît fusion de la balise.
  • comme tout ce que vous devez mettre à jour le xml...à la nouvelle norme.Il y a eu des tonnes d'amorti méthodes sur android depuis le début donc c'est pas vraiment un problème, plus de quelque chose que l'on doit être conscient de.
  • J'ai trouvé ce post explique des choses vraiment bien: "Améliorer la mise en page de la performance" sur 101apps.co.za
InformationsquelleAutor sandalone | 2012-02-08