Flutter 中的自动滚动

Kar*_*kar 4 flutter flutter-animation flutter-web

所以我有一个 SingleChildScrollView() ,它的子级是 Column() ,里面有不同的小部件。我的应用栏上有 3 个按钮。每个代表 3 个我想跳转到的小部件。

当我按下按钮时,我希望 UI 自动滚动到映射的小部件。就像我们在网站中看到的效果一样。

我怎样才能做到这一点?

Chr*_*ore 9

您可以创建一个ScrollController并将其传递给controller滚动小部件的参数。然后您可以使用该animateTo方法将动画设置为偏移量。

前任。

ScrollController controller = ScrollController();

//In build
SingleChildScrollView(
  controller: controller,
  child: ...,
)

//In each button onPressed/onTap
controller.animateTo(offset);
Run Code Online (Sandbox Code Playgroud)