Flutter学习笔记(五)页面跳转与数据传递
主要记录在Flutter中如何实现类似Android中Activity间跳转与数据传递的过程。
Flutter中一切皆Widget,所以页面的跳转也是从一个widget到另一个widget的过程。这里将引入两个概念导航(Navigator),路由(Route),页面的跳转及管理就是靠这两个完成的。
1、页面跳转
Navigator.push方法传递route实现,具体如下
按钮的点击事件之后跳转到MyView页面
2、带传递参数的跳转
2.1 使用Navigator.pushNamed方法通过argments字段传值,可传多个值。接收端方法 ModalRoute.of(context).settings.arguments; 这也是推荐方式。
2.2 通过构造函数传值,这种方式就不多讲了
3、页面返回
关掉该页面返回到上一个页面,也可以同时回传数据给上一个页面。
Navigator.pop(context)方法退出该页面;也可以在后面添加返回数据,Navigator.pop(context,'返回数据');
这里再讲一个小知识点,比如Android中按back键关闭当前页面,WillPopScope就有此功能,所以可以在我们的widget外层套上WillPopScope,如下:
widget栈管理及原理等后续再补上...