Android 通过OnScrollListener来监听RecyclerView的位置
2024-08-30 05:18:01
最近做一个漫画app,在阅读漫画界面需要通过获取recyclerView的位置来实时更新界面上的图片进度(比如1/9),
查阅资料得知了可以通过LayoutManager来获取recyclerView的item位置信息。那么由于这里我的是一幅图是整个屏幕大小,所以通过代码:
LinearLayoutManager l = (LinearLayoutManager)recyclerView.getLayoutManager();
adapterNowPos = l.findFirstVisibleItemPosition();
allItems = l.getItemCount();
其中,adapterNowPos 就是当前的图片位置,
allItems 则是recyclerView中的所有条目数量。
接下来需要搞定的就是动态通知了,于是我们给recyclerView添加一个滑动监听器
完整的代码如下:
recyclerView.setOnScrollListener(new RecyclerView.OnScrollListener(){
@Override
public void onScrolled(RecyclerView recyclerView,int dx,int dy){
super.onScrolled(recyclerView,dx,dy);
LinearLayoutManager l = (LinearLayoutManager)recyclerView.getLayoutManager();
adapterNowPos = l.findFirstVisibleItemPosition();
allItems = l.getItemCount();
String s = adapterNowPos++"/"+allItems;
comic_pic_state.setText(s);//设置图片的数量
pic_state_top.setText(s);
}
});
这样就完成了实时更新。
下面上图:
最新文章
- memcache的lru删除机制
- Struts2之过滤器和拦截器的区别
- Linux 守护进程二(激活守护进程)
- iOS开发获取本机手机号码
- mysql日期加减
- python_way,day8 面向对象【多态、成员--字段 方法 属性、成员修饰符、特殊成员、异常处理、设计模式之单例模式、模块:isinstance、issubclass】
- ajax用户名案例(重点)
- zookeeper数据迁移
- POJ 1422
- 李洪强iOS开发之后使用XIB实现横向滚动的UIScrollView
- poj 2411 Mondriaan's Dream(状态压缩dP)
- 收录一个简单的css类库
- hdu 4195
- 介绍map.entry接口
- 你好,C++(37)上车的人请买票!6.3.3 用虚函数实现多态
- LeetCode (10): Regular Expression Matching [HARD]
- POJ 2449 Remmarguts' Date (SPFA + A星算法) - from lanshui_Yang
- Gartner公布了集成系统的魔力象限 - Nutanix的关键技术是什么?
- iOS开发之理解iOS中的MVC设计模式
- python安装依赖
热门文章
- PostgreSQL+pgpooll+Keepalived双机HA方案
- php八大设计模式之观察者模式
- NodeJS学习笔记 进阶 (13)Nodejs进阶:5分钟入门非对称加密用法
- POJ——T 1470 Closest Common Ancestors
- centos同步网络北京时间
- eclipse下Tomcat7.0启动奔溃问题
- hdu 1695 GCD (欧拉函数、容斥原理)
- shu_1171 十-&;gt;二进制转换(输入输出控制)
- Function的一些结论与eval函数.
- 22.dll调用技术