вторник, 15 декабря 2009 г.

Заполнение заднего фона View повторяющимся изображением (черепицей)

У каждого View есть атрибут android:background, задать значение которого можно различными способами, в том числе указанием XML-ресурса, в котором описан способ заполнения заднего фона.

Для заполнения заднего фона View потребуется исходное изображение, которым будет заполняться фон, и XML-описание с указанием, как использовать это изображение при заполнении фона.

Исходное изображение (@drawable/pyramid (*.png))



XML-описание (@drawable/pyramidbitmap (*.xml))
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
    android:src="@drawable/pyramid" android:tileMode="repeat" />
Данное описание представляет собой xml-представление объекта класса BitmapDrawable.
Атрибут android:tileMode задает тип заполнения, в данном случае повторение исходного изображения по двум направлениям X- и Y- координат (repeat), указанного в атрибуте android:src.

Далее для View задается в качестве заднего фона (атрибут android:background) этот XML-файл. Для демонстрации выбран LinearLayout.

XML-описание:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent" android:layout_height="fill_parent"
    android:background="@drawable/pyramidbitmap">
</LinearLayout>
Результат: