Это похоже на повторяющуюся ошибку при использовании вкладок виджетов.Существует открытая проблема на github, которая, похоже, касается других близких случаев, связанных с вашим.
В вашем случае это происходит, когда ваш PageView
виджет теряет фокусировку на экране.Хотя это не очень хорошее решение (но оно устраняет ошибку), оно должно помочь вам:
Объявите ScrollController
:
class HomePageState extends State<HomePage> {
ScrollController _scrollController = new ScrollController();
...
Назначьте его на CustomScrollView
:
CustomScrollView(
controller: _scrollController,
...
Прежде чем перейти на другую страницу, прокрутите свой список вверх, чтобы сделать виджет PageView видимым:
_openSecondPage(BuildContext context) {
_scrollController.animateTo(0.0, duration: Duration(milliseconds: 1), curve: Curves.bounceInOut);
Navigator.of(context).push(MaterialPageRoute(builder: (_) => SecondPage()));
...
Вы должны сохранить позицию прокрутки, чтобы прокрутить до позиции, когда был нажат элемент.
PS: откройте проблему на флаттере github , чтобы лучше об этом узнать.