onWillPop、maybePop
来源:5-8 Android物理返回兼容处理跳转回调实现

demonCry
2022-09-15
//fix Android物理返回键,无法返回上一页问题@https://github.com/flutter/flutter/issues/66349
onWillPop: () async => !await navigatorKey.currentState!.maybePop()
虽然知道这是干嘛的了, 但不大清除为什么就能修复这个问题。
- maybePop做了什么呢?
- 为什么要用onWillPop呢, 它有什么特殊的地方吗, 为什么不再 onPopPage 里处理呢? 不都是pop前触发吗,按到它们使用的场景是不一样的吗?
navigatorKey.currentState.canPop()
和navigatorKey.currentState.maybePop()
有什么区别呢
写回答
1回答
-
CrazyCodeBoy
2022-09-16
1、maybePop内部也会调用当前路由的willPop方法,并根据willPop的执行结果,来看是是否可以返回上一页;
2、这里遇到的是Android物理返回键无法返回上一页的问题,而onPopPage是在正常页面返回前的回调,在出现Android物理返回键无法返回上一页时不会回调onPopPag方法,所以无法在onPopPag方法中处理;022022-09-20
相似问题