Flutter Scrollcontroller maxScrollExtent 不会到达列表末尾

LIO*_*VSV 3 flutter flutter-layout

它在列表中的最后一个元素之前停止。有没有办法直到最后一个元素的结束容器

        controller
          ..animateTo(
            controller.position.maxScrollExtent,
            curve: Curves.easeIn,
            duration: const Duration(milliseconds: 300),
          );
      });```




Run Code Online (Sandbox Code Playgroud)

AXE*_*AXE 6

就我而言,问题在于元素的大小不相等,并且在渲染之前不知道大小。因此,ListView滚动到其初始估计值maxScrollExtent,但在滚动时元素被渲染并且新maxScrollExtent的更大。我最初通过给它一个更大的值来破解它:

attachmentsScrollController.animateTo(
  attachmentsScrollController.position.maxScrollExtent * 2,
  duration: Duration(milliseconds: 300),
  curve: Curves.easeInOut);
Run Code Online (Sandbox Code Playgroud)


LIO*_*VSV 5

使用没有动画解决了问题

Timer(Duration(milliseconds: 500), () {
        controller.jumpTo(controller.position.maxScrollExtent);
      });
Run Code Online (Sandbox Code Playgroud)