Android--修改ListView的点击效果
2015-08-14 13:57
591 查看
今天,发现自己写的ListView的点击效果不见了,查了一下资料,整理下ListView的点击效果的修改。
1. 取消ListView的点击效果。
方法一:
直接在xml文件的ListView中添加这句:
方法二:
在ListView的子布局的布局文件里添加背景色。
原理是遮挡自带的点击效果。
如:android:background=“#FFFFFF”
2 . 修改ListView的点击效果
先写出相应的selector
btn_selector.xml如下所示:
方法一:
在ListVew里面直接加上属性 android:listSelector=”@drawable/btn_selector”
注意,但是有时候这样是无效的,因为点击效果有时候会被ListView上面的子布局所覆盖。
所以需要加上android:drawSelectorOnTop=”true”。
但是这样后,点击ListView时,子布局的的控件会被覆盖掉,比如TextView的文字就会被覆盖,按住ListView的话,文字就看不见。
方法二:
在子布局文件里利用android:background=”@drawable/btn_selector”
如:
当然也可以通过java文件根据逻辑控制对ListView进行效果的修改。
1. 取消ListView的点击效果。
方法一:
直接在xml文件的ListView中添加这句:
android:listSelector="@android:color/transparent"
方法二:
在ListView的子布局的布局文件里添加背景色。
原理是遮挡自带的点击效果。
如:android:background=“#FFFFFF”
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" android:background="#FFFFFF" > <TextView ... /> <TextView ... /> </LinearLayout>
2 . 修改ListView的点击效果
先写出相应的selector
btn_selector.xml如下所示:
<?xml version="1.0" encoding="UTF-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <!-- 指定按钮按钮下时的图片 --> <item android:state_pressed="true" android:drawable="@color/btn_select_color" /> <!-- 指定按钮松开时的图片 --> <item android:state_pressed="false" android:drawable="@color/btn_color" /> </selector>
方法一:
在ListVew里面直接加上属性 android:listSelector=”@drawable/btn_selector”
注意,但是有时候这样是无效的,因为点击效果有时候会被ListView上面的子布局所覆盖。
所以需要加上android:drawSelectorOnTop=”true”。
但是这样后,点击ListView时,子布局的的控件会被覆盖掉,比如TextView的文字就会被覆盖,按住ListView的话,文字就看不见。
方法二:
在子布局文件里利用android:background=”@drawable/btn_selector”
如:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" android:background="@drawable/btn_selector" > <TextView ... /> <TextView ... /> </LinearLayout>
当然也可以通过java文件根据逻辑控制对ListView进行效果的修改。
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories