android 设置listview item选中背景色

android 设置listview item选中背景色

 

listview是android常用的控件,点击listview item时,默认显示橘黄色的背景色,而且翻滚时也显示相应的颜色。这样往往会跟实际的软件UI设计风格很不协调。通过对listview背景颜色的设置,从而实现与软件UI风格相协调。

改变listview背景选项往往采用建立一个xml文件,如listview_bg.xml,里面定义selector的相关属性,将文件放着drawable的资源文件当资源文件使用,在listview item配置背景属性android:background=”@drawable/listview_bg”从而达到改变背景颜色的目的。

可是问题在于android:background=”@drawable/listview_bg”属性的设置是一个drawable资源文件,就是说listview_bg.xml配置drawable需要对应一个图片之类的资源文件,可是需求当中往往只需要颜色代码而不是图片资源。这个时候需要在listview_bg.xml配置drawable时,通过引用一个颜色的资源文件,即android:drawable=”@color/white”,这样就不需要引用类似android:drawable=”@drawable/image”这样的图片文件了。

 

listview_bg.xml(背景色状态设置)

<?xml version="1.0" encoding="utf-8" ?>  
<selector xmlns:android="http://schemas.android.com/apk/res/android">  
<!-- 没有焦点时的背景颜色 -->  
<item android:state_window_focused="false"  
android:drawable="@color/unfocused" />  
<!-- 非触摸模式下获得焦点并单击时的背景颜色 -->  
<item android:state_focused="true" android:state_pressed="true"  
android:drawable="@color/pressed" />  
<!--触摸模式下单击时的背景颜色  -->  
<item android:state_focused="false" android:state_pressed="true"  
android:drawable="@color/white" />  
<!--选中时的背景颜色  -->  
<item android:state_selected="true"  android:drawable="@color/selected" />  
<!--获得焦点时的背景  颜色-->  
<item android:state_focused="true" android:drawable="@color/focused" />  
</selector>  

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值