Я хочу перейти к следующей странице после достижения нижней части ListView. Когда я перехожу в первый раз, он работает, но когда я пытаюсь снова, он не работает с этой ошибкой:
ScrollController attached to multiple scroll views.
Failed assertion: line 111 pos 12: '_positions.length == 1'
I прочитал пару сообщений, например, post1 , но не смог найти обходной путь.
Это моя реализация:
double previousScrollOffset = 0.0;
ScrollController _controller;
@override
void initState() {
// TODO: implement initState
super.initState();
_controller = ScrollController( initialScrollOffset: previousScrollOffset);
_controller.addListener(() {
if (_controller.position.atEdge) {
if (_controller.position.pixels == 0) {
// you are at the top
print('You are at the top');
} else {
//bottom
// previousScrollOffset = _controller.offset;
Navigator.push(
context,
MaterialPageRoute(builder: (context) => CustomSwipeDownPage()),
);
}
}
});
}
Тогда вот как я звоню это внутри ListView
:
ListView(controller: _controller)
Какое решение?