如何检测窗口小部件是否抖动到屏幕底部?

时间:2020-05-14 14:41:22

标签: flutter

我的窗口小部件呈现照片列表并安装ScrollController来检测用户何时滚动到底部,以便可以加载新照片。 但是,在某些设备上,初始加载的照片无法覆盖整个屏幕。在这种情况下,我想加载更多照片,直到覆盖整个屏幕。但是我怎么知道呢?

scrollController.addListener(() async {
  final pos = scrollController.position;
  final triggerFetchMoreSize = 0.9 * pos.maxScrollExtent;
  if (pos.pixels > triggerFetchMoreSize) {
       // scrolling to bottom detected
  }
}



SingleChildScrollView(controller: scrollController,
          physics: const AlwaysScrollableScrollPhysics(),
          child: PhotoList());

2 个答案:

答案 0 :(得分:1)

您可以使用extentAfter属性来知道到底还有多少空间。

我想这是您要尝试做的事情。

https://stackoverflow.com/a/49509349/13460232

答案 1 :(得分:-1)

您可以使用MediaQuery.of<context>.size.height来完成。您可以使用MediaQuery.of<context>.size.width查找设备的高度,或使用{{1}}

查找设备屏幕的宽度

参考:https://api.flutter.dev/flutter/widgets/MediaQuery-class.html