相当于Flutter中的Android RecyclerView.SCROLL_STATE_IDLE

时间:2019-07-27 12:28:03

标签: android flutter flutter-listview

Android提供RecyclerView.SCROLL_STATE_IDLE之类的滚动状态,告诉用户何时停止滚动。我无法在PageviewListView ScrollListener的颤动中找到任何替代

我的问题

我需要检测PageView中的向上/向下滚动,以基于此执行一些操作。 Flutter提供了方向(_myPageViewController.position.userScrollDirection),但提供了连续的回调。我只需要在用户停止滚动时才能检测到它。

另一种情况

我需要在listView中自动播放视频。因此,我需要检测用户何时停止滚动,然后获取位置并进行播放。

在android中,我会使用RecyclerView.SCROLL_STATE_IDLE scrollListener中的帮助RecyclerView's状态来完成此操作。需要一些类似的东西。

1 个答案:

答案 0 :(得分:2)

根据@pskink@doc NotificationListener<ScrollNotification>给出滚动开始,滚动结束的回调。

NotificationListener<ScrollNotification>(
  onNotification: (scrollNotification) {
    if (scrollNotification is ScrollEndNotification) {
      print("Scroll End"); //Scroll end callback
     }
    return false;
    },
  child: ListView.builder(
      //...
      ),
)

这也适用于其他可滚动的小部件,例如PageView