微信IM聊天信息下拉加载数据
来源:互联网 发布:希腊存款担保移民 知乎 编辑:程序博客网 时间:2024/06/05 16:25
通常,app中的数据都是以ListView的形式展示的。默认地,把“新”数据添加到数据列表的尾部。
但是,如果是IM类型的app,比如查看历史消息这个模块。新数据并不是插到数据列表的尾部,而是插到数据列表的头部。
要实现比较好的用户体验,需要保持当前的ListView的位置。换句话说,如果我们能够随心所欲地指定ListView滚动的位置,那么这个问题就迎刃而解。
在ListView中,有一个setSelectionFromTop()方法,下面是一个使用范例。代码如下:
看一下setSelectionFromTop()的具体实现,代码如下:
从上面的代码可以得知,setSelectionFromTop()的作用是设置ListView选中的位置,同时在Y轴设置一个偏移量(padding值)。ListView还有一个方法叫setSelection(),传入一个index整型数值,就可以让ListView定位到指定Item的位置。
这两个方法有什么区别呢?看一下setSelection()的具体实现,代码如下:
原来,setSelection()内部就是调用了setSelectionFromTop(),只不过是Y轴的偏移量是0而已。现在应该对setSelection()和setSelectionFromTop()有了更深刻的认识了。
阅读全文
0 0
- 微信IM聊天信息下拉加载数据
- 微信下拉加载
- js下拉框动态加载数据信息
- 微信聊天数据丢失怎么恢复
- 实现微信一样下拉加载朋友圈
- Android基于环信SDK开发IM即时聊天
- ListView、RecyclerView 两种方式实现聊天界面支持文字、表情、图片和语音信息,支持下拉加载更多
- 微信聊天界面
- 微信聊天
- 微信聊天开头
- 页面下拉加载数据
- 页面下拉加载数据
- 网页发起qq聊天\微信聊天
- 即时聊天IM
- IM语音聊天
- 环信聊天列表不刷新数据
- 微信等im系统设计架构
- 微信、陌陌 IM 的架构分析
- ueditor 解决视频回显 src链接丢失问题
- TTS语音播报程序部署与配置
- Linux下切换python版本
- 看完让你彻底搞懂Websocket原理
- java基础-网页部分
- 微信IM聊天信息下拉加载数据
- 编译Android下可执行命令的FFmpeg
- Spring Cloud Data Flow Server for Apache Mesos 适用于mesos平台的springcloud数据流服务器(DCOS构建)
- android页面创建
- eclipse 创建服务器时无法选择 tomcat8
- csdn如何转载别人的文章
- Red and Black(dfs)
- 手写python爬虫
- Log4J日志详解配置