У меня есть мозаичное растровое изображение, которое я использую в качестве фона View
. Это представление
, скажем, имеет android: layout_height = "wrap_content"
. Проблема в том, что высота растрового изображения, используемого в качестве фона, участвует в измерении вида, увеличивая высоту View
. Это можно заметить, когда размер содержимого View
меньше, чем высота растрового изображения, используемого в качестве фона тайла.
Позвольте мне показать вам пример.Растровое изображение плитки:
Растровое изображение, которое можно рисовать ( tile_bg.xml
):
<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@drawable/tile"
android:tileMode="repeat"/>
Макет:
<?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:orientation="vertical"
android:background="#FFFFFF">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/tile_bg"
android:text="@string/hello"
android:textColor="#000000" />
</LinearLayout>
Как это выглядит:
Высота TextView
заканчивается высотой растрового изображения. Я ожидал, что растровое изображение будет обрезано до размера View
.
Есть ли способ добиться этого?
Примечания:
View
, это зависит от дочерних элементов (я использую это в ViewGroup
). представления
меньше, чем размер растрового изображения, в противном случае растровое изображение повторяется и обрезано правильно (т. Е. Если размер представления в 1,5 раза больше размера растрового изображения, вы заканчиваете видя в 1,5 раза больше растрового изображения).