ScrollController animateTo()

时间:2018-11-23 12:19:41

标签: flutter flutter-animation

我希望水平listView中的选定项居中,因此我首先计算应该动画化(滚动到)的位置,并且总是正确计算出来,但是当我选择一个远离当前位置的项目时选择一个,列表将无法正确滚动到计算出的位置。

代码:

 $('#Results').data('kendoGrid').refresh()

其中_width是除选定元素以外的所有元素的宽度,因为其宽度为_selectedWidth,水平填充为常量..而index为选定项目的索引

1 个答案:

答案 0 :(得分:0)

尝试使用PostFrameCallback包装滚动条

WidgetsBinding.instance.addPostFrameCallback((_) {
    double _position =  index * (_width + 2 * _horizontalPadding)
                    + (_selectedWidth+_horizontalPadding);
    _scrollController.animateTo(
                  _position,
                  duration: Duration(milliseconds: 1000),
                  curve: Curves.ease);
}