Flutter:如何使用onTap或onPressed滚动页面

3

我正在使用Flutter Web创建一个网站,并且想通过在顶部导航栏中的onTap来向下导航到屏幕中的特定id,就像我们在Web开发中所做的一样。

我该如何实现这个功能?

我们可以使用ScrollController吗?

编辑:我在这里找到了解决方案: https://dev59.com/N1QJ5IYBdhLWcg3wWkj9#58924800


2
这回答您的问题吗?[在Flutter Web中是否能够创建指向同一页面中的不同部分的链接?] (https://dev59.com/sbnoa4cB1Zd3GeqPZeb3) - void
1
嘿,感谢提供源代码,但我正在开发一个响应式网站,所以我可以将控制器作为变量传递吗? - Himanshu Sharma
1个回答

4

您应该这样使用ScrollController:

编辑

var _scrollController = ScrollController();

void goUp(){
    _scrollController.animateTo(
      0.0,
      duration: Duration(milliseconds: 500),
      curve: Curves.easeInOutQuart,
    );
}

@override
  Widget build(BuildContext context) {
    return Scaffold(
      body: CustomScrollView(
        physics: PageScrollPhysics(),
        controller: _scrollController,

1
我正在创建一个响应式网站,其中导航栏是一个不同的小部件,我可以在不同的文件中传递scrollController吗?另外,我的页面没有完整的高度,这会导致一些错误吗? - Himanshu Sharma
1
是的,你可以将ScrollController作为每个布局的参数传递,不,这没问题。 - M.B

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接