import 'package:flutter/material.dart';
import '../pages/Tabs.dart';
import '../pages/Swiper.dart';
import '../pages/Dialog.dart';
final routes={
'/':(context)=>Tabs(),
'/swiper':(context)=>SwiperPage(),
'/dialog':(context)=>DialogPage(),
};
var onGenerateRoute=(RouteSettings settings) {
final String name = settings.name;
final Function pageContentBuilder = routes[name];
if (pageContentBuilder != null) {
if (settings.arguments != null) {
final Route route = MaterialPageRoute(
builder: (context) =>
pageContentBuilder(context, arguments: settings.arguments));
return route;
}else{
final Route route = MaterialPageRoute(
builder: (context) =>
pageContentBuilder(context));
return route;
}
}
};
在main.dart 主入口引入
import 'package:flutter/material.dart';
import 'routes/Routes.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner:false ,
initialRoute: '/',
onGenerateRoute: onGenerateRoute,
);
}
}
使用方法
onTap: (){
// Navigator.of(context).pop(); //隐藏侧边栏
Navigator.pushNamed(context, '/user'); //路由跳转
},