flutter里面InkWell onTap 参数传递

  Widget item(void callback) {
    return InkWell(
      onTap: () => callback,
      child: Text(''),
    );
  }

item是一段通用的样式,但是里面执行的操作可能多种多样。

callback执行的可能是页面跳转,也可能是弹框提示,还有可能是任意的操作,这边我应该怎么写这个callback?

我尝试写成函数直接放进去,但是不等点击就执行了,这不是我需要的,我需要的是点击后再执行这个函数。

下面这两个函数就是我想要在onTap里面执行的函数。这两个函数的区别是参数不同,可能还有其他要执行的函数,跟这两个也不同,所以想要以参数的方式传递进去直接执行。

  /// 页面跳转函数
  void pageJump(
    BuildContext context,
    String route,
    Map params,
  ) {
    App.router.navigateTo(context, route, params);
  }

  /// 消息提示
  void msgToast() {
    Fluttertoast.showToast(msg: 'hello');
  }
阅读 2.9k
1 个回答
新手上路,请多包涵

Widget item(void callback) {

return InkWell(
  onTap: (){
    // 试试这种
        callback(参数...)
    },
  child: Text(''),
);

}

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题