文章目录

  • 1、跳转
  • 2、传值
  • 3、接收

跳转传值是再普通不过的小功能了,在开发中会经常用到,比如列表进入详情。

效果:

1、跳转

比如在onTap事件中处理跳转。

为了导航到新的页面,我们需要调用Navigator.push方法。 该push方法将添加Route到由导航器管理的路由栈中!
该push方法需要一个Route,但Route从哪里来?我们可以创建自己的,或直接使用MaterialPageRoute。 MaterialPageRoute很方便,因为它使用平台特定的动画跳转到新的页面(Android和IOS屏幕切换动画会不同)。

      onTap: () {Navigator.push(context,new MaterialPageRoute(builder: (context) => new ArticleDetail(),);},

ArticleDetail就是要跳转的详情页

2、传值

传值的话相当于Java中的构造方法

ArticleDetail页面此时相当于是一个方法,传入参数即可

      onTap: () {Navigator.push(context,new MaterialPageRoute(builder: (context) => new ArticleDetail(title:_datas[i].title,url: _datas[i].link)),);},

传入了两个参数,title和url,传参形式为 key:参数

3、接收

先添加一个ArticleDetail构造方法,

class ArticleDetail extends StatelessWidget {String url, title;ArticleDetail({Key key, @required this.title, @required this.url}): super(key: key);}

有两个@required修饰的必须参数,即title和url,this.title和this.url直接指向自定义的参数,传入即赋值,即可直接引用,比如${title}

这里是两个String,对象同理。

详情完整代码:

class ArticleDetail extends StatelessWidget {String url, title;ArticleDetail({Key key, @required this.title, @required this.url}): super(key: key);@overrideWidget build(BuildContext context) {return new MaterialApp(theme: ThemeData(primaryColor: YColors.colorPrimary,primaryColorDark: YColors.colorPrimaryDark,),routes: {"/": (_) => new WebviewScaffold(url: "${url}",appBar: new AppBar(leading: new IconButton(icon: Icon(Icons.arrow_back),onPressed: () {Navigator.maybePop(context);}),title: new Text("${title}"),),),},);}
}

官方文档:https://flutter.dev/docs/cookbook/navigation/passing-data

Flutter 跳转页面并传值相关推荐

  1. php跳转传值,php如何跳转页面并传值?

    php跳转页面并传值的方法:1.POST传值法,用于html的[ ]表单跳转的方法:2.GET传值法,在页面跳转时,跟着url跳转:3.SESSION传值法,经常用于用户登陆后保存用户id之类的常用数 ...

  2. HTML5跳转页面并传值以及localStorage的用法

    1.首先,你得在那个页面把数据存入localStorage中吧.这个是必须的! localStorage.setItem("user",JSON.stringify(data.al ...

  3. vue跳转页面及传值

    在路由器中添加route import Vue from 'vue' import Router from 'vue-router' import HelloWorld from '@/compone ...

  4. 小程序跳转页面与传值

    先介绍页面跳转的两种方法 1.普通页面跳转使用navigateTo wx.navigateTo({url: url}) 2.遇到 tab 里面的转转的时候用switchTab这种方式跳转 wx.swi ...

  5. 小程序跳转页面并传值

    在开发中会经常用到页面之间的跳转以及传值,在官方文档中提供了跳转的接口 具体的实现代码如下: 1.跳转的实现: toNextView:function(e){wx.navigateTo({url: ' ...

  6. php中的id怎么传值,uniapp如何跳转页面传值

    uniapp跳转页面传值的方法:首先给点击事件传入id:然后Methods中写方法,代码为[uni.navigateTo({url:'opportunity-form?id='+id})]:最后在详情 ...

  7. ios学习-delegate、传值、跳转页面

    ios学习-delegate.传值.跳转页面   1.打开xcode,然后选择ios--Application--Empty Application一个空项目. 项目目录: 2.输入项目名称以及选择保 ...

  8. Vue跳转页面传值(带参数)

    Vue跳转页面传值(带参数) <div><div><input type="text" placeholder="输入关键字搜索" ...

  9. [HTML]js实现页面跳转,页面A跳到另一个页面B.以及页面传值(中文)

    原文地址为: [HTML]js实现页面跳转,页面A跳到另一个页面B.以及页面传值(中文) 要实现从一个页面A跳到另一个页面B,js实现就在A的js代码加跳转代码 JS跳转大概有以下几种方式: 第一种: ...

最新文章

  1. Escape Time II 简单的深搜dfs()
  2. 74HC573锁存器用法
  3. C#使用Tesseract OCR 解析验证码
  4. ABAP 标准培训教程 BC400 学习笔记之一:ABAP 服务器的架构和一个典型的 ABAP 程序结构介绍
  5. 10-4 6-4 查询厂商“D“生产的PC和便携式电脑的平均价格 (10 分)思路+详解+测试用例
  6. 趣挨踢 | 关于遗留代码的那些事儿
  7. 表达式类型( 一个表达式和一棵二叉树之间,存在着自然的对应关系。写一个程序,实现 基于二叉树表示的算术表达式Expression的操作)
  8. 快速轻巧的CQRS和事件源解决方案
  9. 第2章 python入门
  10. 智能云如何加速产业智能化?百度CTO王海峰2020全球智博会擘画蓝图
  11. bzoj 4293: [PA2015]Siano(线段树)
  12. TOMCAT如何配置域名,可以用本地服务进行测试
  13. web攻击方式和防御方法
  14. freeradius mysql web_使用daloRADIUS Web程序管理FreeRADIUS服务
  15. app上架华为应用市场流程
  16. Bruce Schneier 和他的密码学以及网络安全经典著作推荐
  17. 使用bug分类来设计更好的软件测试
  18. android立体3D效果_3D立体画,让你身临其境
  19. 背景建模方法论文总结
  20. HECTF2021-WP集合

热门文章

  1. python三种方法实现阶乘
  2. pdd.order.list.get拼多多店铺订单列表查询接口(店铺订单详情接口,订单明文接口,订单解密接口,订单插旗接口,订单备注接口)代码对接教程
  3. 思岚雷达win与ubuntu18.04连接并测试详细过程
  4. 禅道php框架 model,NO.20 禅道ZenTaoPHP框架里面的基本概念
  5. 梅林虚拟服务器,梅林云服务器怎么设置
  6. JavaScript的Vue框架知识点大全
  7. qcw——qt自定义控件
  8. 计算机辅助设计自考实践,广东工业大学自考09233计算机辅助设计实践环节考核要求...
  9. 合成作战系统开发解决方案,重点人员管控平台建设
  10. 2022-2028全球与中国尾部支出管理解决方案市场现状及未来发展趋势