RecyclerView滚动适配解决方案
针对键盘弹出/消失及聊天工具的显示与消失时recyclerView内容滚动的问题
效果类似手机QQ,保持消息内容相对位置不变
mRecyclerView.addOnLayoutChangeListener(new View.OnLayoutChangeListener() {private int flagPosition;//the position of last visible itemprivate int flagTop;//the distance between the last visible item and bottom@Overridepublic void onLayoutChange(View v, int left, int top, int right, int bottom, int oldLeft, int oldTop, int oldRight, int oldBottom) {int dy = oldBottom - bottom;LinearLayoutManager layoutManager = (LinearLayoutManager) mRecyclerView.getLayoutManager();if (dy > 0) {mRecyclerView.scrollBy(0, dy);flagPosition = layoutManager.findLastVisibleItemPosition();View view = layoutManager.findViewByPosition(flagPosition);if (view != null) {flagTop = view.getTop() - bottom;}} else {View view = layoutManager.findViewByPosition(flagPosition);if (view != null) {mRecyclerView.scrollBy(0, view.getTop() - bottom - flagTop);} else {mRecyclerView.scrollBy(0, dy);}}}
});
RecyclerView滚动适配解决方案相关推荐
- 目前Android最全面、最易懂的Android屏幕适配解决方案
前言 Android的屏幕适配一直以来都在折磨着我们Android开发者,本文将结合: Google的官方权威适配文档 郭霖: Android官方提供的支持不同屏幕大小的全部方法 Stormzhang ...
- 用startSmoothScroll实现RecyclerView滚动到指定位置并置顶,含有动画。
RecyclerView滚动到指定位置并置顶 RecyclerView本身提供了几个定位的方法,除了手动滑动的scrollTo,smootScrollTo和scrollBy,smoothScrollB ...
- Android 系统(186)---最易懂的Android屏幕适配解决方案--总结版
最易懂的Android屏幕适配解决方案--总结版 本文参考自: Google的官方权威适配文档 郭霖:Android官方提供的支持不同屏幕大小的全部方法 Stormzhang:Android 屏幕适配 ...
- Qt之高DPI显示器(二) - 自适配解决方案分析
Qt之高DPI显示器(二) - 自适配解决方案分析 参考文章: (1)Qt之高DPI显示器(二) - 自适配解决方案分析 (2)https://www.cnblogs.com/swarmbees/p/ ...
- recyclerview滚动到指定条目
android recyclerview滚动到指定条目 自从android5.0推出RecyclerView以后,RecyclerView越来越受广大程序员的热爱了!大家都知道RecyclerView ...
- RecyclerView滚动指定条目并在页面中居中
RecyclerView滚动指定条目并在页面中居中 内容提要 本次的需求是通过指定position来控制条目滚动,并且要滚动到指定到中间的位置. 下面先上图,看看是不是你要 如下介绍主要的步骤 带着问 ...
- vue移动端适配解决方案
手淘适配解决方案 阿里巴巴淘宝团队出品的amfe-flexible是一个用于解决移动端不同机型适配的包.在其源码中,通过不同屏幕的像素比来设置scale值,保证当前窗口的device-width始终等 ...
- 【原】android【手机】屏幕适配解决方案,完美适配适配hdpi,xhdpi,xxhdpi的做法。
[原]android[手机]屏幕适配解决方案,完美适配适配hdpi,xhdpi,xxhdpi的做法. 参考文章: (1)[原]android[手机]屏幕适配解决方案,完美适配适配hdpi,xhdpi, ...
- Android开发:最全面、最易懂的Android屏幕适配解决方案
目录 Android屏幕适配解决方案.png 定义 使得某一元素在Android不同尺寸.不同分辨率的手机上具备相同的显示效果 相关重要概念 屏幕尺寸 含义:手机对角线的物理尺寸 单位:英寸(inch ...
最新文章
- [原]不祥的CPU——Alpha
- nginx.redis.mysql_nginx,redis_mysql和redis效率问题,nginx,redis,mysql,php - phpStudy
- 【干货】2014年iOS推广四大秘籍
- c++调用Java以及string互转
- 从零构建vue+webpack (一)
- s11.9 sar:收集系统信息
- mysql 使用正则表达式查询
- django 1.8 官方文档翻译:14-5 信号
- @程序员,如何用最少的字节编写 C64 可执行文件?
- linux中断处理体系结构
- 小米电视4s android,小米电视系列ROOT教程(含4A,4S,4X等Android6.0.1版机型)
- 软件人才争夺战日趋白热化
- python常用单词
- scrapy使用用Xpath提取深层标签
- Dubbo协议模块源码剖析
- 胡凡算法笔记第二章摘录
- 编码理论第十一章:LDPC码原理学习及其习题分析
- 云计算系统测试之技术概念
- 世上无难事,只要肯攀登
- mybatis plus 事务管理器_最全MyBatis核心配置文件总结,可以作为工具先收藏了
热门文章
- WiFi联盟认证、WiFi联盟测试、WiFi联盟认证测试周期、WiFi联盟会员费是多少?
- 机器人运动逆解算IK
- 2011何凯文四六级冲刺视频及讲义
- mysql 时区 , 夏令时,冬令时
- 916计算机网络概论哪些学校,2019计算机网络概论考研大纲(916)
- pdb断点命令_关于python:使用pdb的条件断点
- 腾讯的硬盘里,有互联网的昨天今天和明天
- plt转pdf软件_PDF 转 Word 有什么好用的电脑与手机的软件?
- 【推荐】javaweb JAVA JSP 快递信息管理系统物流快递网站物流管理系统源码邮件管理网站
- vsm什么意思_VSM 价值流程图(详解)!