setNavigatorKey static method
- @Deprecated('直接调用这个方法,会直接影响全局,并且不是很有必要' '请使用 registerPopGestureCallback 和 unregisterPopGestureCallback 来管理回调')
设置 Navigator Key,用于自动处理页面返回
当 iOS 系统检测到左滑返回手势时,插件会自动调用 navigator.maybePop() 来处理页面返回。
参数:
navigatorKey: 全局 Navigator Key,通常在 MaterialApp 中设置autoHandle: 是否自动处理导航,默认为 true
使用场景:
- 希望插件自动处理页面返回,无需业务层介入
- 需要与 Flutter 的导航系统集成
示例:
final GlobalKey<NavigatorState> navigatorKey = GlobalKey<NavigatorState>();
void main() {
WidgetsFlutterBinding.ensureInitialized();
PopscopeIos.setNavigatorKey(navigatorKey);
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
navigatorKey: navigatorKey, // 关联到 MaterialApp
home: HomePage(),
);
}
}
Implementation
@Deprecated(
'直接调用这个方法,会直接影响全局,并且不是很有必要'
'请使用 registerPopGestureCallback 和 unregisterPopGestureCallback 来管理回调',
)
static void setNavigatorKey(
GlobalKey<NavigatorState>? navigatorKey, {
bool autoHandle = true,
}) {
PopscopeIosPlatform.instance.setNavigatorKey(
navigatorKey,
autoHandle: autoHandle,
);
}