【发布时间】:2018-05-24 15:11:55
【问题描述】:
android中有没有类似于this.finish()的方法来完成当前的flutter活动。
【问题讨论】:
-
看看我的回答,是不是你要找的? :)
标签: flutter
android中有没有类似于this.finish()的方法来完成当前的flutter活动。
【问题讨论】:
标签: flutter
您的意思是关闭当前屏幕并返回上一屏幕吗? 如果是这样,Navigator.pop(context) 应该可以完成这项工作。但是,如果您在入口屏幕(应用程序的第一个屏幕并且此屏幕没有父屏幕/上一个屏幕),则 Navigator.pop(context) 将使您返回黑屏。在这种情况下,我们必须使用 SystemNavigator.pop()。
但不要在 iOS 上使用 SystemNavigator.pop(),Apple 表示应用程序不应自行退出 :)
以下代码在两种情况下都适用于 Android
if (Navigator.canPop(context)) {
Navigator.pop(context);
} else {
SystemNavigator.pop();
}
【讨论】:
使用Navigator.pushReplacement(BuildContext context, Route<T> newRoute)打开一个新的路由,替换当前导航器的路由
【讨论】:
使用密码
Navigator.pushReplacement(context,
MaterialPageRoute(builder: (context) {
return AddDemoUnitActivity();
}));
【讨论】: