对ListView滚动状态的监听
有的时候,我们需要对ListView滚动做一个相应的监听事件,例如:要实现如下图通讯录的功能:
思路为:首先呢,中间那个"路"字为一个TextView,它与ListView采用相对布局的布局风格,当我们滑动ListView的时候
控制其显示,当ListView停止的时候就让其消失。
首先呢,ListView的滚动有三种状态
第一是静止状态,SCROLL_STATE_IDLE
第二是手指滚动状态,SCROLL_STATE_TOUCH_SCROLL
第三是手指不动了,但是屏幕还在滚动状态。SCROLL_STATE_FLING
下面是ListView滚动时的响应代码:
- <span style="font-size:18px">//响应ListView的滚动状态</span>
- <span style="font-size:18px">getListView().setOnScrollListener(new OnScrollListener() {
- <span style="white-space:pre"> </span>int listViewScrollState;
- /**
- * ListView的状态改变时触发
- * @param view
- * @param scrollState
- */
- @Override
- public void onScrollStateChanged(AbsListView view, int scrollState) {
- <span style="white-space:pre"> </span>listViewScrollState = scrollState;
- switch(scrollState){
- case OnScrollListener.SCROLL_STATE_IDLE://空闲状态
- <span style="white-space:pre"> </span>break;
- case OnScrollListener.SCROLL_STATE_FLING://滚动状态
- break;
- case OnScrollListener.SCROLL_STATE_TOUCH_SCROLL://触摸后滚动
- break;
- }
- }
- /**
- * 正在滚动
- * firstVisibleItem第一个Item的位置
- * visibleItemCount 可见的Item的数量
- * totalItemCount item的总数
- */
- @Override
- public void onScroll(AbsListView view, int firstVisibleItem,int visibleItemCount, int totalItemCount) {
- //控制显示和隐藏的代码...
- }
- });</span>
对ListView滚动状态的监听相关推荐
- 安卓网络连接全解:包括网络连接状态的监听、网络数据使用状态的监听、获取当前网络连接情况、启动wifi、获取当前连接wifi的网络情况、扫描wifi热点
全栈工程师开发手册 (作者:栾鹏) 安卓教程全解 安卓网络连接情况全解:包括网络连接状态的监听.网络数据使用状态的监听.获取当前网络连接情况.启动wifi.获取当前连接wifi的网络情况.扫描wifi ...
- android hdmi 监听,对于HDMI设备连接状态的监听
对与最近主要做的是电视机盒子端的开发,其中涉及到设备的状态监听比较繁琐,所以对HDMI的连接状态的监听方法做个记录,方便后续查看. 主要通过两种方式: (1)比较常用的广播监听 注册一个动态广播来获取 ...
- Android之电话状态的监听(来电和去电)
实现手机电话状态的监听,主要依靠两个类:TelephoneManger和PhoneStateListener. TelephonseManger提供了取得手机基本服务的信息的一种方式.因此应用程序可以 ...
- Linphone callState 电话状态的监听状态(二)
Linphone callState 电话状态的监听状态 callState是一个观察者模式 接着上一篇的说, 这篇主要是涉及到linphone中c层的注册监听机制. 主要是代码追踪和代码过程. li ...
- oracle判断侦听状态,oracle 监听状态为BLOCKED
静态监听的状态是UNKNOWN.当数据库状态是OPEN时,动态监听是READY:当数据库状态是NOMOUNT时,动态监听状态是BLOCKED. LSNRCTL> status Connectin ...
- android 软键盘 状态,Android监听软键盘状态
监听软键盘隐藏或显示,代码如下: /** * 监听软键盘状态 */ private void listenerInput() { final LinearLayout ll_main = (Linea ...
- css 鼠标滚动事件,js监听鼠标的滚轮滚动事件教程
不同的有不同的滚轮事件.主要是有两种,onmousewheel(firefox不支持)和dommousescroll(只有firefox支持),关于这两个事件这里不做详述,想要了解的朋友请移步:鼠标滚 ...
- 监听web服务器状态,处理监听fd的流程 - web服务器lighttpd1.4.18代码详细分析_Linux编程_Linux公社-Linux系统门户网站...
//接收一个新的连接connection*connection_accept(server*srv, server_socket*srv_socket) {/*accept everything*// ...
- android 电话状态的监听(来电和去电) PhoneStateListener和TelephonyManager
今天的程序可以实现电话状态改变时启动(来电.接听.挂断.拨打电话),但是暂时没法实现拨打电话时判断对方是否接听.转语音信箱等.Android在电话状态改变是会发送action为android.inte ...
最新文章
- oracle列字符可以增加长度,ORACLE字符列长度语义
- 这才是程序员的爱情观!?
- python安装包为什么这么小-python安装后为什么找不到包
- Android Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE解决办法
- html 高度不够,HTML/CSS:Div未扩展到内容高度
- Java提高篇 —— Java三大特性之多态
- flask服务器获取多个文件,python - OkHttp将带有名称的多个文件上传到Python Flask服务器 - 堆栈内存溢出...
- python键值对储存数据_在python中存储100万个键值对的列表
- npm connect ETIMEDOUT
- secureCRT免密码登陆Linux
- android中java中的开方
- cousera“Neural NetWorks and Deep learning读书笔记
- 玉米社:短视频脚本是什么意思?包含哪些内容?
- 原来这样可以优雅地解决小米手机后台弹窗权限问题
- 字符对应的URL编码值集合
- 进制转换--(2-8)为什么2的3次方=8,所以三位变一位
- 统驭科目(Reconciliation account)
- matlab 离群值去除方法,数据清洗中异常值(离群值)的判别和处理方法
- mysql查询是第几条记录_MySQL查询第几行到第几行记录
- 智能家居“伪智能”陷阱此起彼伏 该如何辨别?
热门文章
- 【C 语言】文件操作 ( C 语言中的文件操作函数 | 磁盘与内存缓冲区 | 缓冲区工作机制 )
- 【Android 逆向】Android 进程注入工具开发 ( 注入代码分析 | 获取 远程 目标进程 中的 /system/lib/libc.so 动态库中的 mmap 函数地址 )
- 【C 语言】文件操作 ( 文件结尾判定 )
- 【Android 安装包优化】开启资源压缩 ( 资源压缩配置 | 启用严格模式的资源引用检查 | 自定义保留/移除资源配置 | 资源压缩效果 )
- 【Android 高性能音频】Oboe 开发流程 ( 检查 Oboe 音频流属性 | 开始播放 | 停止播放 | 关闭 Oboe 音频流 | 重新配置 Oboe 音频流属性 )
- 【Android NDK 开发】JNI 方法解析 ( C/C++ 设置 Java 对象字段 | 查找字段 | 设置字段 )
- 转 推荐 33 个 IDEA 最牛配置,写代码太爽了!
- Ticker 未释放导致的 CPU 占用过高
- hs_err_pid
- [转]RedHat Enterprise Linux 7关闭防火墙方法