テクスチャ付きの背景でかなり苦労しています。60x60 ピクセルのビットマップ テクスチャを繰り返しタイル パターンのレイアウトの背景として設定したいと考えています。res/layout にあるレイアウト xml は次のとおりです。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/dark_texture_background" >
...
</RelativeLayout
そして、これが res/drawable にある dark_texture_background です。
<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@drawable/dark_background_texture"
android:tileMode="repeat" />
dark_background_texture は 60x60 ピクセルの画像です。
したがって、問題は、テクスチャ イメージがタイル化されている間に拡大されていることです。テクスチャ イメージの外側に赤い線を追加して、テクスチャ イメージがどこにあるかを正確に確認しました。結果は次のとおりです。
また、getResources().getDisplayMetrics() に従って画面の高さ、幅、密度を追加しました。
画面幅は 480 ピクセルなので、テクスチャ イメージは 8 回繰り返されます (480 / 60 = 8)。代わりに、5 ~ 1/4 しかありません。画像は最大 90 ピクセルになり、並べて表示されます。なんてこと?
繰り返しを明示的に指示すると、テクスチャ イメージが引き伸ばされるのはなぜですか?