android设置背景平铺


以LinearLayout为例,它提供的background属性将会将背景图片拉伸,相当难看。事实上我们只需做少量的修改就可以实现web编程中css背景图片的效果。来试试吧。
创建重复的背景图片

在drawable目录下创建一个repeat_bg.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" />   
然后在布局的xml文件中可以这样引用:

    <LinearLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@drawable/repeat_bg"> </LinearLayout>   

其中pattern为需要平铺的图片,tileMode属性定义平铺方向。在需要的地方设置background="@drawable/tilebg" 


 

tileMode 属性就是用于定义背景的显示模式:

disabled
默认值,表示不使用平铺
clamp
复制边缘色彩
repeat
X、Y 轴进行重复图片显示,也就是我们说要说的平铺
mirror

在水平和垂直方向上使用交替镜像的方式重复图片的绘制


2.Android 透明背景

Java代码  
  1. View findViewById(R.id.content);//找到你要设透明背景的layout 的id  
  2. v.getBackground().setAlpha(100);//0~255透明度值   

 

3.Android:ListView 自定义背景

在使用Android的ListView时候,我们通常都会添加一张背景图片,

很简单,只要在xml里面定义android:background="@drawable/background"即可。

但这样做以后,当拖动list或者点击list空白位置的时候,ListItem都变成黑色。

这是因为默认的ListItem背景是透明的,而ListView的背景是固定不变的,

所以在滚动条滚动的过程中如果实时地去将当前每个Item的显示内容跟背景进行混合运算,

android系统为了优化这个过程,使用了一个叫做android:cacheColorHint的属性,

在黑色主题下默认的颜色值是#191919,所以有一半是黑色的。

如果你只是换背景的颜色的话,可以直接指定android:cacheColorHint为你所要的颜色,

如果你是用图片做背景的话,那也只要将android:cacheColorHint 指定为透明(#000000)就可以了,

当然为了美化是要牺牲一些效率的


分别转载自:http://blog.csdn.net/svrsimon/article/details/7469195

http://blog.sina.com.cn/s/blog_892efd6001010wi1.html

原文地址:https://www.cnblogs.com/xieyuan/p/3787411.html