先上一张图给大家炫耀下:
这张ListView的图中屏蔽了滚动条
使用android:scrollbars="none"
在listView设置背景后,拖动时会出现变黑现象
使用此属性android:scrollingCache="false"
ListView拖动时上下和其他控件接触的地方显示黑色阴影
使用android:fadingEdge="none"
设置每个Item之间的间距用android:dividerHeight="3dip"
设置间距后,系统默认间距是用黑色填充的
使用android:divider="#F5F5F5"设置自定义颜色,也可以设置为图片
接下来是设置item的样式
这个就需要在定义的item的layout文件中设置它的背景了
我用的是<?xml version="1.0" encoding="utf-8"?>
注意红色标注的地方就是设置的背景样式,此背景是用XML文件编写的,
利用了Android的selector方法来设置控件在不同状态下的背景
<?xml version="1.0" encoding="utf-8"?>
注意:其中的各item就是Listview中的每行在选中,获取焦点,被点选,无焦点时的背景
其实总共就分两类,一种是在活动状态,那么就给加底色高亮显示也可以是图片;一种是不活动状态,默认按浅颜色显示也可以是图片。
我是用的给控件设颜色和形状来完成不同背景显示的,代码如下:
<?xml version="1.0" encoding="UTF-8" ?>
自我感觉这中设置控件显示属性的方式特别有意思,比直接设置背景图片强多了。
设置了背景后有一个问题出现了,就是会在每行四个角显示系统默认的活动状态背景色,很让人不爽。
经过摸索,还是找到了解决方法,在ListView控件中使用android:listSelector="#F5F5F5"属性将系统默认的活动状态背 景色设为和我们设置android:divider="#F5F5F5"行间距显示相同颜色就可以去掉边角的背景色了。