Что является эквивалентом RecyclerView.SCROLL_STATE_IDLE Android в Flutter
Android дает такие состояния прокрутки, как RecyclerView.SCROLL_STATE_IDLE
который сообщает, когда пользователь останавливает прокрутку. Я не могу найти альтернативу флаттеру для Pageview
или же ListView
ScrollListener.
Моя проблема
Мне нужно обнаружить прокрутку вверх / вниз в PageView, чтобы выполнить некоторые операции, основанные на этом. Флаттер дает направление (_myPageViewController.position.userScrollDirection
) но это дает непрерывный обратный вызов. Мне нужно обнаружить его только тогда, когда пользователь перестает прокручивать.
Другой сценарий
Мне нужно сделать автоматическое воспроизведение видео в виде списка. Поэтому мне нужно определить, когда пользователь прекращает прокручивать, а затем получить позицию и играть в нее.
В андроиде я бы сделал это с помощью RecyclerView.SCROLL_STATE_IDLE
состояние в RecyclerView's
scrollListener. Нужно что-то похожее в трепетании.
1 ответ
По словам pskink и Doc NotificationListener<ScrollNotification>
дает обратный вызов начала прокрутки, конца прокрутки.
NotificationListener<ScrollNotification>(
onNotification: (scrollNotification) {
if (scrollNotification is ScrollEndNotification) {
print("Scroll End"); //Scroll end callback
}
return false;
},
child: ListView.builder(
//...
),
)
Это также работает с другими прокручиваемыми виджетами, такими как PageView
,