Flutter 之窥探 原理篇之界面
2019-08-21 本文已影响0人
BillZhang88
路由和导航
大部分的App都会包含多个页面,并希望用户能从屏幕平滑到另一个屏幕,从一个页面到另外一个页面,在iOS中我们可能需要一个导航控制器,但是Flutter中,这些元素被称为路由(Router),它们是由导航器(Navigator)控制器,导航器管理着路由对象的堆栈并提供管理堆栈的方法,如Navigator.push和Navigator.pop ,通过路由对象的进出栈来完成页面的跳转
FLutter页面是如何跳转的
进入一个页面:
onPressed: () { Navigator.push( context,newMaterialPageRoute(builder: (context) =>newSecondScreen()), );},
我们使用Navigator.push 方法,该方法将添加Route到路由的栈中,可以直接使用MaterialPageRoute创建路由,它是一种模态路由,可以通过平台自适应的过渡效果来切换屏幕,默认情况下,当一个模态路由被另一个替换时,上一个路由将保留在内存中,如果想释放所有资源,可以将maintainState设置为false
返回页面: