Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何在recyclerview中获取完全可见的单元格/项目?_Android_Android Recyclerview_Android View_Gridlayoutmanager_Onscrolllistener - Fatal编程技术网

Android 如何在recyclerview中获取完全可见的单元格/项目?

Android 如何在recyclerview中获取完全可见的单元格/项目?,android,android-recyclerview,android-view,gridlayoutmanager,onscrolllistener,Android,Android Recyclerview,Android View,Gridlayoutmanager,Onscrolllistener,我有一个屏幕,其中项目/单元格以2x2网格形式设计。我想做的是,当RecyclerView向上/向下滚动时,我想在项目可见性/印象上启动API 因为我的单子很大 例如,场景是 第一次加载时,显示6(3x2)个项目/单元。然后,对所有这6个项目使用FireAPI,因为它们是完全可见的 在向上滚动时,例如,它显示另外2个项目,上面/前2个项目将退出屏幕,因此,它应该为新的2个项目启动API 通过这种方式,我希望完成整个列表的遍历,并对新找到的项调用API 我试过的是 下面的GridLayoutMan

我有一个屏幕,其中项目/单元格以2x2网格形式设计。我想做的是,当
RecyclerView
向上/向下滚动时,我想在项目可见性/印象上启动API

因为我的单子很大

例如,场景是

  • 第一次加载时,显示6(3x2)个项目/单元。然后,对所有这6个项目使用FireAPI,因为它们是完全可见的
  • 在向上滚动时,例如,它显示另外2个项目,上面/前2个项目将退出屏幕,因此,它应该为新的2个项目启动API
  • 通过这种方式,我希望完成整个列表的遍历,并对新找到的项调用API

    我试过的是

  • 下面的GridLayoutManager方法不适用于我,因为它们每个都给出不同的值,而且似乎是随机的
  • int findFirstVisibleItemPosition()

    int findFirstCompletelyVisibleItemPosition()

    int findLastVisibleItemPosition()

    int findLastCompletelyVisibleItemPosition()

  • Rect | getGlobalVisibleRect()
    的帮助下检查屏幕上的
    视图的边界
    ,但在
    onScrolled()| OnScrollStateChanged()

  • 请建议获取完全可见单元格的正确索引的方法。

    尝试为
    onScrolled()| onScrollStateChanged()
    的操作创建单独的线程。它会解决你的问题