У меня есть ListView внутри PageView, поэтому у меня есть вертикальная прокрутка (ListView) и горизонтальная прокрутка (PageView). Моя проблема в том, что горизонтальная прокрутка намного более чувствительна, чем вертикальная прокрутка, становится трудно выполнять вертикальную прокрутку, потому что она почти всегда воспринимается как боковая.
Моя идея состоит в том, чтобы ограничить область горизонтальной прокрутки так, чтобы вертикальная прокрутка преобладает в самой большой области экрана:
Возможно ли это? Как мне это сделать?
PageController pageController = new PageController();
return Scaffold
(
body: Stack
(
children: <Widget>
[
widfondo(),
Column
(
children: <Widget>
[
widAppBar(context, cuento),
Expanded
(
child: PageView.builder
(
itemCount: cantidadDePaginas,
dragStartBehavior: DragStartBehavior.down,
//physics: BouncingScrollPhysics(),
onPageChanged: (index)
{
setState(()
{
numeroPagina = ++index;
});
},
controller: pageController,
itemBuilder: (BuildContext context, int index)
{
return widCuerpo(context, cuento, index);
},
),
)
],
)
],
),
);
Widget widCuerpo(BuildContext context, Cuento cuento, int numPagina)
{
return ListView
(
scrollDirection: Axis.vertical,
children: <Widget>
[
widTituloCuerpo(context, cuento),
widTextoCuerpo(context, cuento),
],
);
}
Я видел другие подобные вопросы, и я видел, что они используют PageController, но я не уверен, возможно ли сделать это таким образом.
Заранее спасибо.