Futter基础第8篇: 实现页面跳转、跳转传值(普通路由、普通路由传值)
效果图:
Home.dart
Search.dart
Category.dart
Form.dart
底部导航基本框架在:flutter实现底部导航
好的,做好准备工作,我们就开始进入正轨,开始实现页面跳转
Home.dart
import 'package:flutter/material.dart';
import '../Search.dart';class HomePage extends StatefulWidget {@override_HomePageState createState() => _HomePageState();
}class _HomePageState extends State<HomePage> {@overrideWidget build(BuildContext context) {return Column(crossAxisAlignment: CrossAxisAlignment.start,mainAxisAlignment: MainAxisAlignment.center,children: <Widget>[RaisedButton(child: Text('跳转到搜索页面'),onPressed: (){ //监听器//路由跳转Navigator.of(context).push(MaterialPageRoute(builder: (context)=>SearchPage()));},color: Theme.of(context).accentColor,textTheme: ButtonTextTheme.primary,),SizedBox(height: 20,),],);}
}
Category.dart
import 'package:flutter/material.dart';
import '../Form.dart';class CategoryPage extends StatefulWidget {@override_CategoryPageState createState() => _CategoryPageState();
}class _CategoryPageState extends State<CategoryPage> {@overrideWidget build(BuildContext context) {return Column(crossAxisAlignment: CrossAxisAlignment.start, //次轴居左mainAxisAlignment: MainAxisAlignment.center, //主轴居中children: <Widget>[RaisedButton(child: Text('跳转到表单页面'),onPressed: () { //监听器Navigator.of(context).push(MaterialPageRoute(builder: (context)=>FormPage(title: '我是跳转传值',)/*** 相当于:builder:(context){* return FormPage();* }*/));},color: Theme.of(context).accentColor,textTheme: ButtonTextTheme.primary,)],);}
}
在lib→pages目录下新建这两个文件:
Search.dart
import 'package:flutter/material.dart';class SearchPage extends StatefulWidget {@override_SearchPageState createState() => _SearchPageState();
}class _SearchPageState extends State<SearchPage> {@overrideWidget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text('搜索页面'),),body: Text('搜索页面内容区域'),);}
}
Form.dart
import 'package:flutter/material.dart';class FormPage extends StatelessWidget {String title;FormPage({this.title='表单'}); //参数是一个可选参数,默认值是表单,当接收到值时,表单值直接被覆盖@overrideWidget build(BuildContext context) {return Scaffold(floatingActionButton: FloatingActionButton( //悬浮按钮child: Text('返回'),onPressed: (){ //监听器Navigator.of(context).pop(); //退出当前堆,返回上一级页面},),appBar: AppBar(title: Text(this.title),),body: ListView(children: <Widget>[ListTile(title: Text('我是表单页面'),),ListTile(title: Text('我是表单页面'),),ListTile(title: Text('我是表单页面'),),ListTile(title: Text('我是表单页面'),),],),);}
}
Futter基础第8篇: 实现页面跳转、跳转传值(普通路由、普通路由传值)相关推荐
- Futter基础第3篇: 实现引用远程图片、本地图片、实现圆形图片,实现圆角图片【Image.network、Image.asset、BorderRadius.circular(150)】
文章目录 一丶 效果图 二丶 代码+注释 三丶 知识点 一丶 效果图 [1]引用远程图片 [2]引用本地图片 [3]实现圆形图片(方法一).圆角图片(受弧度影响) [4]实现圆形图片(方法二) 二丶 ...
- phpstudy mysql创建表_MySQL_Mysql入门基础 数据库创建篇,1.创建数据表---基础(高手跳 - phpStudy...
Mysql入门基础 数据库创建篇 1.创建数据表---基础(高手跳过) 正统方法:create [TEMPORARY] table 表名 [if not exists] (创建的列项定义) [表的选项 ...
- JavaScript 基础知识 - BOM篇
前言 本篇文章是JavaScript基础知识的BOM篇,如果前面的<JavaScript基础知识-DOM篇>看完了,现在就可以学习BOM了. 注意: 所有的案例都在这里链接: 提取密码密码 ...
- JavaScript 基础知识 - DOM篇(二)
7. 节点操作 7.1 节点的属性 节点分类: 标签节点 文本节点 属性节点 注释节点 节点常用的属性: nodeType:节点的类型 nodeName:节点名称 nodeValue:节点值 常见的节 ...
- vue2+vue3小白零基础教程—vue2篇,全网2021最详细教程
vue教程 提示:Vue3系列请参考Vue2+Vue3小白零基础教程-vue3篇文章,本文为vue2篇. 1. Vue核心 1.1 Vue简介 1.1.1 Vue是什么 一套用于构建用户界面的渐进式J ...
- HTML(html5)-----学习(基础笔记总结篇)
-预备内容:-软件安装篇 1.记笔记工具----typroa 文件名:为了区分计算机中的不同文件,而给每个文件设定一个指定的名称.由基本文件名(文件主名)和扩展名组成. eg:SDN.docx 销售统 ...
- 《精通QTP——自动化测试技术领航》—第1章1.5节QTP精华—对象库(上)之基础攻略篇...
本节书摘来自异步社区<精通QTP--自动化测试技术领航>一书中的第1章1.5节QTP精华-对象库(上)之基础攻略篇,作者余杰 , 赵旭斌,更多章节内容可以访问云栖社区"异步社区& ...
- python turtle基本语法_Python 基础语法-turtle篇
Python 基础语法-turtle篇 今天这节课主要讲了类的概念,并引出turtle中的函数和Turtle类. -创建一个Turtle类:brad=turtle.Turtle() -定义Turtle ...
- 算法之基础数论应用篇(一)
基础数论应用篇 子集和 题目描述 筛质数 筛质数模板 欧拉筛 线性筛 哥德巴赫猜想 夏洛克和他的女朋友 二次筛法 分解质因数 试除法分解质因数 分解阶乘质因子 快速幂 模板 快速幂 快速乘法 序列的第 ...
- vue.js路由配置vue-router的基础学习 - 概念篇
文章目录 引言 · 相关问题小结: 一.动态路由匹配 (两种情况) A. 两种情况,代码对比: B. 两种情况,效果图对比: C. 提醒 · 仔细体会: D. 优先级的问题: 二.嵌套路由 引言 · ...
最新文章
- scala定义抽象类与抽象字段
- UVA - 10048 Audiophobia(Floyd求路径上最大值的最小)
- STM8S103F2 EEPROM读写
- 机械学python_机械学习 · python深度学习 · 看云
- 超详细图解!【MySQL进阶篇】MySQL事务和锁
- php中对ASCII码的处理ord() 、chr()
- mysql 两字段相乘_sql统计2列相乘和语句.doc
- C++ 类和对象成员特性
- chromedriver放在哪个目录下_python | Linux各目录及每个目录的详细介绍 - MR_黄Python之路...
- python 自动交易_Python自动化交易入门
- matlab 门限回归模型,门限回归及Stata操作汇总与空间门槛回归模型简介
- python 隐藏命令行窗口_科学网—Windows下后台运行程序并隐藏cmd命令提示符窗口 - 周锋的博文...
- 复盘2020年全球医疗行业:新冠疫苗争分夺秒、跨国药企押注中国、药企整合并购不断 | 医药观察...
- 上行PHR余量提升优化思路
- html如何制作正方体手工图,立体图形手工模型(怎样用卡纸制作正方体、长方体)...
- 高斯消元法的python实现
- Github 上火热的十个 Python 项目,从Debug工具到AI水军、量化交易系统。( 嗨学编程)
- 【python第一章 基础捋顺,第二章 python基础语法】
- KNN(四)--FLANN库介绍及其应用
- Service ‘Jenkins‘ (Jenkins) failed to start. verify that you have sufficient privileges to start
热门文章
- 第九篇 IO流技术(九)
- day69-oracle 22-DBCA
- 数据同步的设想-数据解耦
- [转]java String的经典问题(new String(), String)
- FATFS Copy Files
- 在wamp集成环境中添加mysql操作记录
- Form的method方法get和post的区别
- System.DateTime.Now.ToString
- 给Bert加速吧!NLP中的知识蒸馏Distilled BiLSTM论文解读
- 【ACL2020】五篇与文本理解相关的论文