怎么实时获取scrollview滚动的距离

怎么实时获取scrollview滚动的距离,第1张

在与scrollview同级建个和中部标签选卡一样的布局,开始的时候设置成隐藏ViewGONE,当scrollview滚动到中部位置的时候让它显示出来就OK了,当小于中部位置时再把它隐藏。我就这么做的,不过我当时不是scrollview而是ListView

获取 RecyclerView 的滑动距离方法如下:

1、监听RecyclerView的addOnScrollListener后自己记录onScrolled的dy

2、同时给adapter加个registerAdapterDataObserver,监听插入/删除/移动,自己加减前面记录的dy滚动值即可。

关于RecycleView滑动的机制,总结起来有两点:

1、RecycleView滑动和布局相对独立。

2、RecycleView的滑动分次单独进行。以上两个机制就从根本上阻碍了获取当前的滑动距离,布局的细节是使用铆点,每个view都会根据铆点进行安排自己的位置,这时候没有计算滑动偏移,包括增加view和删除View,增加和删除会根据铆点的位置再次布局,也不会修改滑动偏移,而每次滑动都是计算距离,交给Scroller来滑动Content内的View,可以监听滑动接口在没有插入删除的情况下自己计算滑动位置,但是一旦有View动态的增加删除就没有办法了

以上就是关于怎么实时获取scrollview滚动的距离全部的内容,包括:怎么实时获取scrollview滚动的距离、如何获取 RecyclerView 的滑动距离、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9699909.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存