【Android】背景画像を繰り返し表示する方法

今回は、CSS で使われる、background-repeat: repeat; を Android アプリで実装する方法についてです。
最初は、単に android:background="[背景画像のパス]" とすればいいだけかと思ったのですが、これだと背景画像が画面いっぱいに拡大表示されてしまい、意図した結果になりませんでした。

で、実装方法について調べた際に参考にさせていただいた記事はこちらから。

[Android] 背景に画像を繰り返し表示する – Qiita
https://qiita.com/zuccyi/items/682f255c1f53474eb990

 

実装方法ですが、まず res/drawable ディレクトリ直下に、XML ファイルを作成します。
名前は何でも OK ですが、参考サイトのファイル名をそのまま使って pattern.xml としました。
コードは下記のとおりです。

<?xml version="1.0" encoding="utf-8"?>
<bitmap
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:src="[背景画像のパス]"
    android:tileMode="repeat" />

4行目に、繰り返し表示したい画像のパスを指定してください。

あとは、背景画像を追加したい要素の android:background に上記で作成したファイルのパスを指定すれば完了です。
下記のサンプルコードでは、LinearLayout に背景画像を設定しています。

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/pattern"
    android:orientation="vertical">

    ......

</LinearLayout>

4行目で、作成した XML ファイルを背景画像に設定しています。
追加するファイルやコードはこれだけです!

Android でも CSS でできることはほぼほぼ実現できますが、高確率で XML ファイルを別途作成する必要があるので少々手こずりました…。
個人的には、CSS の方が好きですね。

 

以上、Android で背景画像を繰り返し表示させる方法でした。
ご参考になれば幸いです。

>株式会社シーポイントラボ

株式会社シーポイントラボ

TEL:053-543-9889
営業時間:9:00~18:00(月〜金)
住所:〒432-8003
   静岡県浜松市中央区和地山3-1-7
   浜松イノベーションキューブ 315
※ご来社の際はインターホンで「316」をお呼びください

CTR IMG