第一種方法:在drawable文件夾中添加自己的mybg.xml文件,描述如:
mybg.xml代碼
<?xml
version ="1.0" encoding ="utf-8" ?>
<bitmap
xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@drawable/bg"
android:tileMode="repeat" />
/***********************************************屬性詳解start****************************************************/
其中pattern爲需要平鋪的圖片,tileMode 屬性定義平鋪方向。在需要的地方設置background="@drawable/tilebg"
tileMode 屬性就是用於定義背景的顯示模式:
- disabled
- 默認值,表示不使用平鋪
- clamp
- 複製邊緣色彩
- repeat
- X、Y 軸進行重複圖片顯示,也就是我們說要說的平鋪
- mirror
-
在水平和垂直方向上使用交替鏡像的方式重複圖片的繪製
/***********************************************屬性詳解end****************************************************/
然後再需要用的地方使用:
Xml代碼
android:background="@drawable/mybg"
第二種方法:代碼實現方式:
Bitmap
bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.icon);
BitmapDrawable bd = new BitmapDrawable(bitmap);
bd.setTileModeXY(TileMode.REPEAT , TileMode.REPEAT );
bd.setDither(true);
view.setBackgroundDrawable(bd);
再着可以用*.9.png實現。
可以在上左兩邊添加要延伸的像素行
另一:
Android 透明背景
View v = findViewById(R.id.content);//找到你要設透明背景的layout 的id
v.getBackground().setAlpha(100);//0~255透明度值
另二:
Android:ListView 自定義背景
在使用Android的ListView時候,我們通常都會添加一張背景圖片,
很簡單,只要在xml裏面定義android:background="@drawable/background"即可。
但這樣做以後,當拖動list或者 點擊list空白位置的時候,ListItem都變成黑色。
這是因爲默認的ListItem背景是透明的,而ListView的背景是固定不變的,
所以在 滾動條滾動的過程中如果實時地去將當前每個Item的顯示內容跟背景進行混合運算,
android系統爲了優化這個過程,使用了一個叫做 android:cacheColorHint的屬性,
在黑色主題下默認的顏色值是#191919,所以有一半是黑色的。
如果你只是換背景的顏色的話,可以直接指定android:cacheColorHint爲你所要的顏色,
如果你是用圖片做背景的話,那也只要將android:cacheColorHint 指定爲透明(#000000)就可以了,
當然爲了美化是要犧牲一些效率的