WillPopScope已被弃用
来源:5-8 Android物理返回兼容处理跳转回调实现

LBruce
2025-02-19
老师好,在我学习到本章节的时候,WillPopScope已被弃用
看注释说用PopScope取代
于是尝试用PopScope
结果发现像视频中那样使用WillPopScope的话,可以通过安卓物理按键返回(虽然要点击两下返回键,我用的虚拟机),也可以通过appBar的BackButton返回(从注册页返回登录页)。但是换成PopScope的话,可以正常通过appBar的BackButton返回(从注册页返回登录页),安卓物理按键无论按多少次都没有任何动作。
是我使用的方式不对?还请老师指教,谢谢老师。
写回答
4回答
-
CrazyCodeBoy
2025-02-25
将:
WillPopScope( onWillPop: () async => !(await navigatorKey.currentState?.maybePop() ?? ),
改为:
PopScope( canPop: , onPopInvokedWithResult: (didPop,result) async { (didPop) { ; } bool canPop= await navigatorKey.currentState?.maybePop() ?? ; debugPrint($canPop); (!canPop) { SystemNavigator.pop(); } },
记得导入下:
import 'package:flutter/services.dart';
10 -
CrazyCodeBoy
2025-02-21
参考下。
00 -
LBruce
提问者
2025-02-20
PopPage的canPop,只接受一个bool值
00 -
CrazyCodeBoy
2025-02-19
参考下。
042025-02-24
相似问题