私は水平にタイルしたい画像があり、プログラムでそれを行う必要があります。私は2つの方法を試みましたが、どちらもうまくいきません。Androidはプログラムで背景を画像にタイルします
button_inner_shadow画像 navigation_backgroundタイルに上記画像
1を想定するXMLである:タイル画像直接
BitmapDrawable navigationBackground = new BitmapDrawable(BitmapFactory.decodeResource(
getResources(), R.drawable.button_inner_shadow));
navigationBackground.setTileModeX(Shader.TileMode.REPEAT);
navigationTextViews[id].setBackgroundDrawable(navigationBackground);
2:タイル画像にXMLを使用
navigationBackground = new BitmapDrawable(BitmapFactory.decodeResource(
getResources(), R.drawable.navigation_background));
navigationTextViews[id].setBackgroundDrawable(navigationBackground);
navigation_background
<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:dither="true"
android:src="@drawable/button_inner_shadow"
android:tileMode="repeat" />
私は間違っていますか?
私はまた、setBackgroundResource
を使用して、プログラムの別の部分で背景色を変更して、それが問題であると考えました。私はnavigationTextViews[id].setBackgroundResource(0);
を追加しました。バックグラウンドリソースを削除する必要があり、それは私が使用した上記のソリューションでは動作しません。
EDIT:navigationTextViewsは[] TextViews
エラーが発生しましたか?logcatを投稿してください。 –
私はエラーになりません。 – heero