📅  最后修改于: 2023-12-03 14:44:33.271000             🧑  作者: Mango
Navigator.push
是Flutter中路由导航器的一种方法,用于将新路由推入导航堆栈。这是一种强大的功能,允许开发人员在应用程序中实现复杂的导航逻辑。
Future<T?> Navigator.push<T extends Object?>(
BuildContext context,
Route<T> route
)
参数:
返回值:
以下是一个简单的实例,展示如何使用Navigator.push
在Flutter中推入新的路由。
class MyHomePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('My Home Page'),
),
body: Center(
child: ElevatedButton(
child: Text('Open Route'),
onPressed: () {
Navigator.push(
context,
MaterialPageRoute(builder: (context) => MyRoutePage()),
);
},
),
),
);
}
}
在上面的代码中,我们创建了一个名为MyHomePage的无状态组件,并在其中包含一个ElevatedButton,当用户点击该按钮时,会将新的路由推入导航堆栈。
class MyRoutePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('My Route Page'),
),
body: Center(
child: ElevatedButton(
child: Text('Go Back'),
onPressed: () {
Navigator.pop(context);
},
),
),
);
}
}
在上面的代码中,我们创建了一个名为MyRoutePage的无状态组件,并在其中包含一个ElevatedButton,当用户点击该按钮时,会弹出当前的路由并返回到之前的页面。
Navigator.push
是Flutter中路由导航器的一种方法,它允许开发者在应用程序中实现复杂的导航逻辑。在使用该方法时,需要传递BuildContext和Route对象作为参数。该方法返回一个Future对象,表示新路由页面的返回值。开发人员可以使用Navigator.pop方法来弹出新的路由并返回先前的页面。