setOnLeftBackGesture static method
- @Deprecated('直接调用这个方法,会直接影响全局,多个页面使用时会有覆盖问题' '请使用 registerPopGestureCallback 和 unregisterPopGestureCallback 来管理回调')
- VoidCallback? callback
设置左滑返回手势的回调函数
当 iOS 系统检测到左滑返回手势时,会调用此回调函数,由业务层自行处理。
参数:
callback: 手势触发时的回调函数,传入 null 可清除回调
使用场景:
- 需要在返回前执行自定义逻辑(如保存数据、显示确认对话框等)
- 需要根据业务状态决定是否允许返回
- 需要统计或记录用户的返回行为
注意:
- ⚠️ 此方法会直接替换回调,多个页面使用时会有覆盖问题
- 推荐使用 registerPopGestureCallback 和 unregisterPopGestureCallback 来管理回调
- 如果同时设置了 setNavigatorKey,会先自动调用 maybePop(),然后再执行此回调
- 如果只设置此回调而不设置 setNavigatorKey,则需要在回调中自行处理页面返回
示例:
void main() {
WidgetsFlutterBinding.ensureInitialized();
// 只设置回调,业务自行处理
PopscopeIos.setOnLeftBackGesture(() {
print('检测到左滑返回手势');
// 这里可以执行自定义逻辑
// 例如:显示确认对话框、保存数据等
});
runApp(MyApp());
}
Implementation
@Deprecated(
'直接调用这个方法,会直接影响全局,多个页面使用时会有覆盖问题'
'请使用 registerPopGestureCallback 和 unregisterPopGestureCallback 来管理回调',
)
static void setOnLeftBackGesture(VoidCallback? callback) {
PopscopeIosPlatform.instance.setOnSystemBackGesture(callback);
}