Flutter 导航:页面跳转与路由管理
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
initialRoute: '/',
routes: {
'/': (context) => HomePage(),
'/about': (context) => AboutPage(),
'/settings': (context) => SettingsPage(),
},
);
}
}
class HomePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('主页'),
),
body: Center(
child: RaisedButton(
child: Text('关于'),
onPressed: () => Navigator.pushNamed(context, '/about'),
),
),
);
}
}
class AboutPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('关于'),
),
body: Center(
child: RaisedButton(
child: Text('设置'),
onPressed: () => Navigator.pushNamed(context, '/settings'),
),
),
);
}
}
class SettingsPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('设置'),
),
body: Center(
child: Text('设置页面'),
),
);
}
}
这段代码展示了如何在Flutter中使用命名路由进行页面跳转。首先,在MaterialApp
中定义了初始路由以及一个包含多个命名路由的映射。然后,在各个页面中通过Navigator.pushNamed
方法来跳转到指定的页面。这是一个简单的例子,展示了如何在实际应用中管理和切换不同的页面。
评论已关闭