昨天准备把2个activity通过fragment继承到一个里面, 左边的fragment是一个listview,右边的是左边某个项目的详细信息。
遇到的问题是当点击昨天某一个listview的时候把背景设置成高亮或者改变背景颜色, google提供的fragment例子上是有个这个功能的。但是当我移植到自己的项目里时,该功能一直不起作用。上网查了一下,实现方法跟我的一样,就是使用setItemChecked.
于是我就重新阅读了google的示例代码,发现他使用的是ArrayAdapter,我用的是BaseAdapter,查了资料发现这2个类区别不大,就是多一个filter接口 , 于是把我的BaseAdapter实现了filter接口,还是不起作用。
于是我仔细查了ArrayAdapter的资料,发现简单版只有一个EditText控件,发现该控件实现了checkable接口。 于是上网搜Listview和checkable ,果然发现很多资料。
于是自定一个一个RelativeLayout类 ,实现checkable接口, 再把布局文件改成自定已的RelativeLayout类, 终于实现了更改listview的某一项的背景颜色。
关键代码只有几句
public void setChecked(boolean checked) {
if(checked){
this.setBackgroundColor(Color.GREEN);
refreshDrawableState();
}else{
this.setBackgroundColor(Color.TRANSPARENT);
refreshDrawableState();
}
}
分享到:
相关推荐
谷歌的sdk中item的背景颜色默认是黄色的,通过自定义我们可以改变item的背景颜色
ListView中没有默认的选择颜色,只有选择Item后的焦点颜色,鼠标点击时Item有颜色,放开鼠标后颜色也就没有了,要实现放开鼠标后选择项的背景还是有颜色的。
listview控件功能扩展--自定义可编辑列ListViewCell[ListViewCell.rar]-精品源代码
经常需要在项目中实现以下效果,点击listview中子item的颜色会改变
仿ListView可视化定制控件-源码仿ListView可视化定制控件-源码仿ListView可视化定制控件-源码
MVC-ListView-DataModel-master.zipMVC-ListView-DataModel-master.zipMVC-ListView-DataModel-master.zipMVC-ListView-DataModel-master.zipMVC-ListView-DataModel-master.zipMVC-ListView-DataModel-master....
设置Listview背景颜色的各种方法,简单实用!如:隔行背景颜色,变换颜色设置。。
listview控件功能扩展--自定义可编辑列(源码) listview控件功能扩展--自定义可编辑列(源码) listview控件功能扩展--自定义可编辑列(源码)
我们常见的androidlistview 都是整体改变背景颜色,我今天上传的是 动态改变listview 其中一条或者多条的背景颜色,以及改变item的颜色。 不需要添加list的点击事件 就可以完成。
改代码主要是针对listview修改指定item字体颜色
Andorid项目源码 ListView 实现点击侧边A-Z快速查找完整版
继承于Android的ListView的可拖动和滑动item的ListView---SlideAndDragListView.zip,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
给Listview的Item设置动画效果,相关博文:http://www.cnblogs.com/tianzhijiexian/p/4171632.html
Listview单元格颜色设置.Listview单元格颜色设置.txt
针对WPF中ListView的基础样式进行模板重写,可以选择去除ListView的背景颜色或添加自己想要的选中时或者鼠标移上去选择项的背景颜色
android listview点击保持背景颜色,实现已读功能
1、item的layout设置background颜色值,去掉背景颜色即可 2、listview中listselector属性的效果被覆盖了,比如列表的Item为一个占满单元格的ImageView的时候,ImageView如果有内容那么listSelector的效果就会被挡住 ...
1、ListView item中加入checkbox后onListItemClick 事件无法触发。 原因:checkbox的优先级高于ListItem于是屏蔽了ListItem的单击事件。 解决方案:设置checkbox的android:focusable="false" 2、选择其中的...
ListView 实现点击侧边A-Z快速查找
ListView的小例子,一次性采用绑定控件,ListView保持背景颜色不失效等功能,对初学者很有帮助