找出 ListView 中的哪些项目可见

Dol*_*rma 16 dart flutter flutter-layout flutter-listview

如何找出当前visibleinvisible在 中的项目ListView
例如,我有 100 个项目ListView,当我滚动到屏幕或列表顶部时,我想检测哪些项目从视口中出现或消失。

插图:

在此处输入图片说明

cre*_*not 10

没有简单的方法可以做到这一点。是同样的问题,但是,它没有答案。

有一个关于此的活跃GitHub 问题

该问题有多种解决方案。这个Gist有一个需要rect_getter.
或者,您可以查看此提案

TL; 博士

如果您正在寻找一种简单的方法来找到它,这还没有实现。但是,有一些解决方案,例如我上面提到的解决方案以及来自其他软件包的解决方案,例如VisibilityDetector来自flutter_widgets.

  • 现在有一个简单的方法可以做到这一点,请检查这个答案:/sf/answers/4007685671/ (5认同)

Ash*_*lak 2

您还可以使用inview_notifier_list。它基本上是一个普通的 ListView,它定义了一个可见区域,并且它的子视图在位于该区域时会收到通知。

在此输入图像描述