Я хочу, чтобы выбранный элемент в горизонтальном listView был отцентрирован, поэтому я сначала вычисляю позицию, которую следует анимировать (прокрутить до), и она всегда рассчитывается правильно, но когда я выбираю элемент, который далек от текущегоесли выбран один, список не прокручивается правильно до рассчитанной позиции.
Код:
double _position = index * (_width + 2 * _horizontalPadding)
+ (_selectedWidth+_horizontalPadding);
_scrollController.animateTo(
_position,
duration: Duration(milliseconds: 1000),
curve: Curves.ease);
где _width - ширина всех элементов, кроме выбранного, так как его ширина равна _selectedWidth, и горизонтальное заполнение является постоянным .. и индекс является индексом выбранного элемента