想设置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" />
-
</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"]
-
android:state_checked=["true" | "false"]
-
android:state_enabled=["true" | "false"]
-
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"
这种方式不仅能应用于listview,也可以用于设置其他控件,比如button,在选中、点击等不同状态下的显示方式
分享到:
相关推荐
Android中ListView 左滑出现删除按钮,点击按钮删除ListView的item条目.出现删除按钮还有动画效果,点击删除按钮消失时也有动画
主要为了实现点击list内的每一项以及点击按钮都有不同的反应 里面放一个textview做标题,一个listview即可 bg.xml 作为Listview每一项的格式,总体是水平(横向)的线性布局 博主往这里面放了1个imageview,1个垂直...
这样做之后item确实可以点击了,但又会出现另外一个问题 点击item 的时候button也会出现点击效果,这时候就需要重写button 的setPressed 方法,判断button 的父控件是否被点击,如果被点击了就直接return 代码如下:
android listview 多级目录 类似嵌套可展开的listview效果。首先是一个listview 列表。 每一个列表项里,点击展开按钮。该列表项就多出一个目录。再点击展开二级目录按钮,就显示二级目录。
.不复用,listview就不会乱跳 .因为listview条目中的控件有做动画效果(展开与关闭)。 .但是此时,点击展开与关闭,效果正常。...产生的为:多次点击展开按钮,会出现跳动现象。 大家可以帮忙解决一下,
1、使用Toast实现,点击2个不同按钮,分别显示两种不同效果的消息提示。 2、编写一个列表程序。实现点击不同项,显示对应消息提示。(列表组件ListView)。 运行效果参考:
Android 仿微信QQ listView滑动出现删除修改按钮,点击删除按钮弹底部对话框进行确认删除,代码简单明了 可直接加入项目中
在这个demo里,我们会掌握如何使用ListView创建一个国家选择器。该选择器的运行效果如下图所示。当选择了一个国家时,点击“Pick Country”按钮,就会在Toast中显示出国家名。
ListView点击item显示菜单是要实现这样的效果: 需要实现的逻辑如下: 1)点击一个普通item,展开当前菜单,同时关闭其他菜单 2)点击一个已展开的菜单,隐藏当前菜单 3)将展开菜单滑到listview之外,再滑动...
类似QQ朋友列表,当你点击某个好友,然后向左移动,就会显示一个删除按钮,当然你要自定义开发,大体框架已经搭建好
Android使用popwindow弹窗显示listview表格,button按钮点击弹出一个表格,点击其他地方消失,向下滑动,代码可以直接运行。效果图本人博客有。
Android应用设计源码安卓实例源代码,可供学习及设计参考。
自定义ListView,实现向下拉刷新数据,向上拉显示更多,并可同时点击按钮实现更多。直接解压引入eclipse即可运行查看效果,绝对不错的
列表ListView嵌入CheckBox,这是可以实现了自定义在一个列表视图中ListView加CheckBox的功能,同时也可以通过点击“全选”按钮来选择全部的选项,具体的效果如图所示等。
该效果是仿iPhone滑动产生删除按钮,再次滑动隐藏按钮,点击删除按钮删除一个item,更新界面。
3.可以实现响应点击信号。 4.有插入位置跟踪标线标志。 5.有鼠标选中拖拽过程中的截图效果。 6.通过MousePressed、MouseMoved、MouseReleased实现。 7.目标人群:想学习使用MousePressed、MouseMoved、MouseReleased...
2、 点击界面1中的按钮后,跳转至界面2,将界面1中输入的内容传递至界面2的ListView中显示,效果如图2所示。(要求:列表文字大小为28sp,图片使用Vector格式,从上到下依次使用credit_card_black,account_box_...
Android ListView和ExpandableListView的侧滑删除操作 实现了ListView和ExpandableListView的左滑出现...能在实体机和虚拟机上运行,无广告,实现效果和截图一样,但点击expand按钮,在地点进行侧滑时会出现崩溃现象。
记得在我刚开始接触到美团网的时候就对美团网这个城市定位、选择城市功能很感兴趣,觉得它做得很...(3)下面是一个ListView用来显示数据列表,右侧是一个字母索引表,当我们点击不同的字母,ListView会定位到该字母地方
2、当点击列表项前面的单选按钮时,在该条目右侧显示删除图标,点击该图标删除当前条目。 三、实现思路 借助github上的开源代码drag-sort-listview-master加以改造。 四、主要源码展示 1、Activity代码 package ...