Flutter 跳转多个页面后回到第一个页面并实现参数传递
在Flutter中,使用Navigator可以实现页面间的跳转和参数传递。以下是一个示例,演示了如何从第二个页面跳回到第一个页面,并且传递参数:
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: FirstPage(),
);
}
}
class FirstPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('第一个页面'),
),
body: Center(
child: RaisedButton(
child: Text('跳转到第二个页面'),
onPressed: () {
Navigator.push(
context,
MaterialPageRoute(builder: (context) => SecondPage()),
);
},
),
),
);
}
}
class SecondPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('第二个页面'),
),
body: Center(
child: RaisedButton(
child: Text('返回第一个页面并传递参数'),
onPressed: () {
Navigator.pop(context, '传递的数据');
},
),
),
);
}
}
在这个例子中,我们定义了两个页面FirstPage
和SecondPage
。在FirstPage
中,我们使用一个按钮来跳转到SecondPage
。在SecondPage
中,当按下按钮时,我们使用Navigator.pop(context, '传递的数据')
来返回到FirstPage
,同时传递了一个字符串'传递的数据'
。当FirstPage
被重新显示时,它可以通过监听SecondPage
返回的数据来处理传递的参数。
评论已关闭