くうと徒然なるままに

モバイルアプリを作りながらバックエンドも作っています。

Android の Layout XML の <merge> タグについて

Android の layout ファイルでは <merge></merge> というタグを使うことができます。
この記事ではそのタグの使い方について書いていきたいと思います。

どのように使うのか

レイアウトファイルのルートタグとして <merge></merge> を設置します。

そのタグの中に任意のタグを配置して使います。

サンプルコード

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

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Button1" />

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Button2" />

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Button3" />
</merge>

なぜ使うのか

レイアウトファイルのルート要素には一つのタグしか配置することができない制約があります。

しかし、作成したレイアウトファイルを別のレイアウトファイルから include したり inflate して別のレイアウトで使うなどで一つのレイアウトファイルのルートに複数にタグを配置したいことがあると思います。

その時に他のレイアウトで内包する代わりに使うことができます。

公式サイト

developer.android.com