【问题标题】:how to use Gesture Detector "onTap" to navigate to some other page?如何使用手势检测器“onTap”导航到其他页面?
【发布时间】:2020-12-24 07:11:37
【问题描述】:

如何使用手势检测器从一个页面导航到另一个页面? 这就是我到目前为止所做的,我还导入了 login_page.dart 但gestureDetector 给出了错误“未定义的登录页面”

 GestureDetector(
              onTap: () {
                pageController.animateToPage(
                  login_page,
                  duration: Duration(milliseconds: 400),
                  curve: Curves.linear,
                );
              },
              child: Text("GET STARTED NOW"),
            ),

【问题讨论】:

  • 你上面的代码应该可以正常工作
  • 什么是login_page?你是如何以及在哪里声明的?
  • @MidhunMP 它的页面 (login_page.dart) 我希望用户在他/她点击开始后发送到该页面

标签: flutter dart


【解决方案1】:

请在onTap: 函数中使用以下代码。 ***

更改代码的第 4 行。


 GestureDetector(
              onTap: () {
                pageController.animateToPage(
                  HereIsTheClassNameOfYourPage(),//Please type the class name of your login_page class
                  duration: Duration(milliseconds: 400),
                  curve: Curves.linear,
                );
              },
              child: Text("GET STARTED NOW"),
            ),

【讨论】:

  • 这不是和我上面贴的一样吗?
  • 是的,但是如果有评论,请到那里看看。
【解决方案2】:

【讨论】:

    【解决方案3】:

    将受控的 PageView 从当前页面动画到给定页面。

    动画持续给定的持续时间并遵循给定的曲线。返回的 Future 在动画完成时解析。

    持续时间和曲线参数不能为空。

    未来的 animateToPage ( 整数页, {@required Duration 持续时间, @required 曲线曲线} )

    【讨论】:

      【解决方案4】:

      您的GestureDetector 语法正确,但您将错误的参数传递给animateToPage。 根据颤振 api 文档:

      Future<void> animateToPage (
      int page,
      {@required Duration duration,
      @required Curve curve}
      )
      

      这会将受控PageView 从当前页面动画化到给定的page

      你的login_page var 必须是页面的位置。你没有正确声明它。

      更多信息:animateToPage docs

      【讨论】:

        猜你喜欢
        • 2019-02-07
        • 1970-01-01
        • 2020-05-04
        • 2023-03-16
        • 1970-01-01
        • 1970-01-01
        • 2023-01-13
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多