Flutter 跳转页面并传值
文章目录
- 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 跳转页面并传值相关推荐
- php跳转传值,php如何跳转页面并传值?
php跳转页面并传值的方法:1.POST传值法,用于html的[ ]表单跳转的方法:2.GET传值法,在页面跳转时,跟着url跳转:3.SESSION传值法,经常用于用户登陆后保存用户id之类的常用数 ...
- HTML5跳转页面并传值以及localStorage的用法
1.首先,你得在那个页面把数据存入localStorage中吧.这个是必须的! localStorage.setItem("user",JSON.stringify(data.al ...
- vue跳转页面及传值
在路由器中添加route import Vue from 'vue' import Router from 'vue-router' import HelloWorld from '@/compone ...
- 小程序跳转页面与传值
先介绍页面跳转的两种方法 1.普通页面跳转使用navigateTo wx.navigateTo({url: url}) 2.遇到 tab 里面的转转的时候用switchTab这种方式跳转 wx.swi ...
- 小程序跳转页面并传值
在开发中会经常用到页面之间的跳转以及传值,在官方文档中提供了跳转的接口 具体的实现代码如下: 1.跳转的实现: toNextView:function(e){wx.navigateTo({url: ' ...
- php中的id怎么传值,uniapp如何跳转页面传值
uniapp跳转页面传值的方法:首先给点击事件传入id:然后Methods中写方法,代码为[uni.navigateTo({url:'opportunity-form?id='+id})]:最后在详情 ...
- ios学习-delegate、传值、跳转页面
ios学习-delegate.传值.跳转页面 1.打开xcode,然后选择ios--Application--Empty Application一个空项目. 项目目录: 2.输入项目名称以及选择保 ...
- Vue跳转页面传值(带参数)
Vue跳转页面传值(带参数) <div><div><input type="text" placeholder="输入关键字搜索" ...
- [HTML]js实现页面跳转,页面A跳到另一个页面B.以及页面传值(中文)
原文地址为: [HTML]js实现页面跳转,页面A跳到另一个页面B.以及页面传值(中文) 要实现从一个页面A跳到另一个页面B,js实现就在A的js代码加跳转代码 JS跳转大概有以下几种方式: 第一种: ...
最新文章
- Escape Time II 简单的深搜dfs()
- 74HC573锁存器用法
- C#使用Tesseract OCR 解析验证码
- ABAP 标准培训教程 BC400 学习笔记之一:ABAP 服务器的架构和一个典型的 ABAP 程序结构介绍
- 10-4 6-4 查询厂商“D“生产的PC和便携式电脑的平均价格 (10 分)思路+详解+测试用例
- 趣挨踢 | 关于遗留代码的那些事儿
- 表达式类型( 一个表达式和一棵二叉树之间,存在着自然的对应关系。写一个程序,实现 基于二叉树表示的算术表达式Expression的操作)
- 快速轻巧的CQRS和事件源解决方案
- 第2章 python入门
- 智能云如何加速产业智能化?百度CTO王海峰2020全球智博会擘画蓝图
- bzoj 4293: [PA2015]Siano(线段树)
- TOMCAT如何配置域名,可以用本地服务进行测试
- web攻击方式和防御方法
- freeradius mysql web_使用daloRADIUS Web程序管理FreeRADIUS服务
- app上架华为应用市场流程
- Bruce Schneier 和他的密码学以及网络安全经典著作推荐
- 使用bug分类来设计更好的软件测试
- android立体3D效果_3D立体画,让你身临其境
- 背景建模方法论文总结
- HECTF2021-WP集合
热门文章
- python三种方法实现阶乘
- pdd.order.list.get拼多多店铺订单列表查询接口(店铺订单详情接口,订单明文接口,订单解密接口,订单插旗接口,订单备注接口)代码对接教程
- 思岚雷达win与ubuntu18.04连接并测试详细过程
- 禅道php框架 model,NO.20 禅道ZenTaoPHP框架里面的基本概念
- 梅林虚拟服务器,梅林云服务器怎么设置
- JavaScript的Vue框架知识点大全
- qcw——qt自定义控件
- 计算机辅助设计自考实践,广东工业大学自考09233计算机辅助设计实践环节考核要求...
- 合成作战系统开发解决方案,重点人员管控平台建设
- 2022-2028全球与中国尾部支出管理解决方案市场现状及未来发展趋势