flutter - 如何知道小部件在视口(viewport)中是否可见?

标签 flutter dart viewport

我有一个 View ,它由一个 Scaffold 和一个 ListView 组成,列表的每个子项都是一个不同的小部件,代表不同的“部分” View (部分范围从简单的 TextViews 到 Columns 和 Rows 的排列),我只想在用户滚动时显示 FloatingActionButon在某些 Widgets 上(由于位于列表的下方,最初不可见)。

最佳答案

https://pub.dev/packages/visibility_detector通过它的 VisibilityDetector 提供此功能可以包装任何其他 Widget 的小部件,并在小部件的可见区域发生更改时通知:

VisibilityDetector(
   key: Key("unique key"),
   onVisibilityChanged: (VisibilityInfo info) {
       debugPrint("${info.visibleFraction} of my widget is visible");
   },
   child: MyWidgetToTrack());
)

关于flutter - 如何知道小部件在视口(viewport)中是否可见?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51069712/

相关文章:

flutter - Dart 包 - 如何隐藏内部方法和类?

jquery - div全高宽动态

google-chrome - Chrome devTools 不再显示我的窗口大小

reflection - 如何检查方法镜像是否实现typedef

html - 在 Mobile Safari 中导致旋转问题的视口(viewport)设置

flutter - 如何使用 yield 返回错误(from catch error)

flutter - 升级 flutter 后命令不起作用

flutter - 在 RxDart 中用什么代替 "combineLatest2"?

dart - 如何在 Dart 中展开列表

dart - Flutter:刮刮卡