1. 普通路由
普通路由传递参数很简单,就是自定义的Widget其实就是一个类,
定义Widget时,构造函数接收参数,然后跳转到这个Widget时,和普通的类一样传递参数就好了。
1.1 简单实例
import 'package:flutter/material.dart';
class Home extends StatefulWidget {
String data;
Home(this.data);
@override
_HomeState createState() => _HomeState();
}
class _HomeState extends State<Home> {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text("Home"),),
body: Text(widget.data)
);
}
}
import 'package:FlutterTest/home.dart';
import 'package:flutter/material.dart';
main(List<String> args) {
runApp(MaterialApp(
title: "路由管理",
home:Scaffold(
appBar: AppBar(title: Text("主页"),),
body: Builder(builder: (context){
return FlatButton(onPressed: (){
Navigator.push(context,MaterialPageRoute(builder: (context){
return Home('Rob');
}));
}, child: Text("跳转到登录页面"));
})
),
1.2 普通路由常用的Navigator方法
Navigator.push(context,MaterialPageRoute(builder: (context){
return Home('Rob'