用flutter路由跳转页面时,次要用到的就是Navigator.push();Navigator.pop();两个办法。

然而存在一个问题:

当我从主页跳转到另一个页面,再返回到主页时,主页并不能被动刷新。怎么解决呢?

答案时,当返回到主页时,监听到返回事件,而后被动触发主页刷新。

class PageOne extends StatefulWidget {  @override  _PageOneState createState() => new _PageOneState();}class _PageOneState extends State<PageOne> {    // 第一个页面  _getRequests()async{          print('这里进行操作');  }  @override  Widget build(BuildContext context) {    return Scaffold(      body: Center(        child: RaisedButton(onPressed: ()=>        Navigator.of(context).push(new MaterialPageRoute(builder: (_)=>PageTwo()),)        .then((val)=>val?_getRequests():null), // 通过then进行监听回调参数      ),    ));  }}class PageTwo extends StatelessWidget { // 第二个页面  @override  Widget build(BuildContext context) {    //somewhere    Navigator.pop(context,true); // 第二个就是须要传到参数  }}