在 Flutter 中 Android 的 RecyclerView.SCROLL_STATE_IDLE 相当于什么
What is the equivalent of Android's RecyclerView.SCROLL_STATE_IDLE in Flutter
Android 给出像 RecyclerView.SCROLL_STATE_IDLE
这样的滚动状态,告诉用户何时停止滚动。我无法在 Pageview
或 ListView
ScrollListener.
的 flutter 中找到任何 alternative
我的问题
我需要在 PageView 中检测滚动 up/down 以执行一些基于此的操作。 Flutter 给出了方向(_myPageViewController.position.userScrollDirection
)但是它给出了一个连续的回调。我只需要在用户停止滚动时检测它。
另一个场景
我需要在列表视图中自动播放视频。所以我需要检测用户何时停止滚动,然后获取位置并播放。
在 android 中,我会在 RecyclerView's
scrollListener 中的帮助 RecyclerView.SCROLL_STATE_IDLE
状态下完成此操作。在 flutter 中需要类似的东西。
根据@pskink and @docNotificationListener<ScrollNotification>
给出滚动开始、滚动结束的回调
NotificationListener<ScrollNotification>(
onNotification: (scrollNotification) {
if (scrollNotification is ScrollEndNotification) {
print("Scroll End"); //Scroll end callback
}
return false;
},
child: ListView.builder(
//...
),
)
这也适用于其他可滚动小部件,例如 PageView
。
Android 给出像 RecyclerView.SCROLL_STATE_IDLE
这样的滚动状态,告诉用户何时停止滚动。我无法在 Pageview
或 ListView
ScrollListener.
我的问题
我需要在 PageView 中检测滚动 up/down 以执行一些基于此的操作。 Flutter 给出了方向(_myPageViewController.position.userScrollDirection
)但是它给出了一个连续的回调。我只需要在用户停止滚动时检测它。
另一个场景
我需要在列表视图中自动播放视频。所以我需要检测用户何时停止滚动,然后获取位置并播放。
在 android 中,我会在 RecyclerView's
scrollListener 中的帮助 RecyclerView.SCROLL_STATE_IDLE
状态下完成此操作。在 flutter 中需要类似的东西。
根据@pskink and @docNotificationListener<ScrollNotification>
给出滚动开始、滚动结束的回调
NotificationListener<ScrollNotification>(
onNotification: (scrollNotification) {
if (scrollNotification is ScrollEndNotification) {
print("Scroll End"); //Scroll end callback
}
return false;
},
child: ListView.builder(
//...
),
)
这也适用于其他可滚动小部件,例如 PageView
。