Navigator.of(context).pop
和Navigator.pop(context)
有什么区别?
对我来说,两者似乎做了同样的工作,实际的差异是什么。一个被弃用了吗?
Navigator.of(context).pop
尊重系统如何处理背压,而Navigator.pop(context)
则没有。
下面显示了我已禁用后退按钮按下的情况,但第二个按钮仍允许它。
@override
Widget build(BuildContext context) {
return WillPopScope(
onWillPop: () => Future.value(false), // disabling back press
child: Scaffold(
appBar: AppBar(title: Text("Back button")),
body: Center(
child: Column(
children: <Widget>[
RaisedButton(onPressed: () => Navigator.of(context).pop), // won't allow back press
RaisedButton(onPressed: () => Navigator.pop(context)), // allows back press
],
),
),
),
);
}