
这是用例:
我有5个食物imagevIEws的recyclervIEw列表:
>西瓜
>芒果
>桃子
>苹果
>番石榴
我想记录一个输出(Log.e(TAG,“显示了桃子!”),当用户滚动通过它时,桃子图像视图在recyclervIEw中完全可见.
当视图在recyclervIEw中完全可见时,是否存在调用的回调?我几乎想将方法findFirstCompletelyVisibleItemposition()转换为回调方法:http://developer.android.com/reference/android/support/v7/widget/LinearLayoutManager.html#findFirstCompletelyVisibleItemPosition()
我读了这个线程:
RecyclerView – callback when view is no longer visible,然后在此处查看文档http://developer.android.com/reference/android/support/v7/widget/RecyclerView.OnChildAttachStateChangeListener.html,但我看到在以下情况下调用了回调方法onChildVIEwAttachedToWindow():
Called when a vIEw is attached to the RecyclerVIEw.
可以在实际显示视图之前附加附件.
我可以想到一种效率极低的方法:
>在您的recyclervIEw上设置RecyclerVIEw.OnScrollListener
>在onScrolled方法内调用mlinearlayoutmanager.findFirstCompletelyVisibleItemposition().检查返回等于3的int.
每次recyclervIEw滚动时,将执行数百次计算.
解决方法:
正如您提到的,您实际上应该在onScrolled()方法中处理它. findFirstCompletelyVisibleItemposition()方法非常有效,所进行的计算不会影响大多数设备,包括低端设备.
附带说明一下,我认为您想要的是findLastCompletelyVisibleItemposition()方法.
去过也做过 :-)
总结以上是内存溢出为你收集整理的android-Recyclerview:完全可见时回调视图全部内容,希望文章能够帮你解决android-Recyclerview:完全可见时回调视图所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)