Android中的ListView点击时的背景颜色设置
想设置listview中每行在点击、选中等不同状态下有不同的背景颜色,或者背景图片。
这可以用Android的Selector来实现。它可以定义组件在不同状态下的显示方式。
新建一个xml文件list_bg_selector.xml在drawable目录下
- <?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="@drawable/没有焦点时图片背景" />
- <item android:state_focused="true" android:state_pressed="true"
- android:drawable="@drawable/非触摸模式下获得焦点并单击时的背景图片" /> <!--双条件-->
- <item android:state_focused="false" android:state_pressed="true"
- android:drawable="@drawable/触摸模式下单击时的背景图片" />
- <item android:state_selected="true" android:drawable="@drawable/选中时的图片背景" />
- <item android:state_focused="true" android:drawable="@drawable/获得焦点时的图片背景" />
- <item android:drawable="@drawable/silver" /> <!--default color 当对应状态下没有定义时使用此default -->
- </selector>
<?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="@drawable/没有焦点时图片背景" />
<item android:state_focused="true" android:state_pressed="true"
android:drawable="@drawable/非触摸模式下获得焦点并单击时的背景图片" /> <!--双条件-->
<item android:state_focused="false" android:state_pressed="true"
android:drawable="@drawable/触摸模式下单击时的背景图片" />
<item android:state_selected="true" android:drawable="@drawable/选中时的图片背景" />
<item android:state_focused="true" android:drawable="@drawable/获得焦点时的图片背景" />
<item android:drawable="@drawable/silver" /> <!--default color 当对应状态下没有定义时使用此default -->
</selector>
定义item时具体可以选择的条件有:
- android:state_pressed=["true" | "false"] //被点击
- android:state_focused=["true" | "false"] //获得焦点
- android:state_selected=["true" | "false"] //被选中
- android:state_checkable=["true" | "false"] //可以被check时
- android:state_checked=["true" | "false"] //被check时,例如用于checkbox
- android:state_enabled=["true" | "false"] //可用是,即能接收click/touch事件
- android:state_window_focused=["true" | "false"] //所在的窗口获得焦点
android:state_pressed=["true" | "false"] //被点击
android:state_focused=["true" | "false"] //获得焦点
android:state_selected=["true" | "false"] //被选中
android:state_checkable=["true" | "false"] //可以被check时
android:state_checked=["true" | "false"] //被check时,例如用于checkbox
android:state_enabled=["true" | "false"] //可用是,即能接收click/touch事件
android:state_window_focused=["true" | "false"] //所在的窗口获得焦点
然后再listview的layout定义里加上就ok了
- android:background="@drawable/list_bg_selector"
android:background="@drawable/list_bg_selector"
Android中的ListView点击时的背景颜色设置的更多相关文章
- Android 文字链接 文字点击时的背景颜色
案例:实现“忘记密码?”这个链接,并且在按下的时候改变颜色. 方法一:这个可以用TextView实现: 主界面main.xml: <?xml version="1.0" en ...
- 1016-06-首页20-封装工具条---UITableView控件距离顶部的间距问题----cell选中时的背景颜色设置
一.设置UITableView里面的顶部 cell 距离顶部的间距的三种方式: 方法 1. 直接设置: self.tableView.contentInset = UIEdgeInsetsMake(H ...
- WPF中ListBox /ListView如何改变选中条背景颜色
适用ListBox /ListView WPF中LISTVIEW如何改变选中条背景颜色 https://www.cnblogs.com/sjqq/p/7828119.html
- H5 -- 取消a标签在点击时的背景颜色
原文链接:点我 1.取消a标签在移动端点击时的蓝色 a { -webkit-tap-highlight-color: rgba(255, 255, 255, 0); -webkit-user-sele ...
- 取消a标签在移动端点击时的背景颜色
一.取消a标签在移动端点击时的蓝色 -webkit-tap-highlight-color: rgba(255, 255, 255, 0); -webkit-user-select: none; -m ...
- 取消a标签或者onclick在移动端点击时的背景颜色
一.取消a标签在移动端点击时的蓝色 -webkit-tap-highlight-color: rgba(, , , ); -webkit-user-select: none; -moz-user-fo ...
- css取消a标签在移动端点击时的背景颜色
一.取消a标签在移动端点击时的蓝色 -webkit-tap-highlight-color: rgba(255, 255, 255, 0);-webkit-user-select: none;-moz ...
- 【转】整理一下Android中的ListView
原文网址:http://sunbofu.blog.51cto.com/6431507/1280441 Android中的listview目测是一个使用频率很高的组件,所以今天来总结一下listview ...
- Android中的ListView属性使用总结
Android中使用ListView控件比较常见,如果能知道常用的一些属性使用,肯定会少很多坑. 1.ListView是常用的显示控件,默认背景是和系统窗口一样的透明色,如果给ListView加上背景 ...
随机推荐
- 【转】Android系统概览
这篇文章其实原文叫 <老罗的Android之旅>导读PPT 是罗升阳的博客,我觉得用“Android系统概览”作为标题更贴切些,对于在应用层已经开发了一段时间的人来说,读完之后会有很多体会 ...
- window phone 8资源管理器打开文件
一.打开安装包里面文件: StorageFolder sf = Package.Current.InstalledLocation;//ApplicationData.Current.LocalFol ...
- PHP删除目录
function delDir($directory) { if(file_exists($directory)) { $dir_handle = @opendir($directory); if($ ...
- 进阶Kotlin-常见关键字
常见Kotlin 的关键字 一些常见的语法,我没有写注释. 前面基础的kotlin语法已经弄完了. 现在是高阶kotlin的语法啊. 包括,面向对象,lambad等. 其中面向对象的三大特点:封装 ...
- Permission denied: .gvfs
$ sudo umount /home/william/.gvfs $ rm -rf ~/.gvfs/ Reference: (Permission denied: .gvfs)[https://an ...
- 20165219 2017-2018-2 《Java程序设计》第5周学习总结
20165219 2017-2018-2 <Java程序设计>第5周学习总结 课本知识总结 第7章 内部类与异常类 一 1 内部类:类的一种成员 2 外嵌类:包含内部类的类称为内部类的外嵌 ...
- javascript 深拷贝对象
深拷贝polesResult,拷贝后sourceCopy成为与polesResult完全独立的对象 var sourceCopy=[].concat(JSON.parse(JSON.stringify ...
- &(引用) 和 *(指针)
引用: 引用相当于给引用的对象起一个别名,对引用的操作即是对原对象的操作. 使用方式: int cnt = 1024; int &x = cnt; 一般情况下引用的类型要和被引用对象一致(例外 ...
- MyBatis配置文件mybatis-config.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC & ...
- HDU-1754-I Hate It(线段树 单点更新 区间最大值)
I Hate It Time Limit: 9000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total ...