我在下面的main.dart文件中有一些代码。将在push
文件中从new Show()
到show.dart
。
main.dart
import 'show.dart';
//....
Navigator.of(context).pop();
Navigator.of(context).push(new MaterialPageRoute(
builder: (BuildContext context) => new Show()));
//...
Future<void> _getSomething() async {
}
//...
和我在show.dart上创建的按钮
//...
IconButton(
icon: Icon(
Icons.menu,
color: Colors.white,
size: 28,
),
onPressed: () => print("back to main.dart and call _getSomething()"),
),
现在,如何返回main.dart
文件并从_getSomething()
文件中调用show.dart
?
答案 0 :(得分:1)
您可以在onPressed调用中传递参数(例如bool
),该参数然后将决定导航到_getSomething()
时是否应运行main.dart
。 / p>
此article有一个名为给我一些数据的人一节,描述如何将值传递到上一个屏幕。另一个好处是,如果您选择使用Navigator.push()
并在用户点击“后退”按钮时引起怪异的流程,则无需在堆栈中添加其他页面。