ios - 如何在 Flutter MaterialApp 中检测 iOS 向后滑动手势?
问题描述
我想检测用户何时在我的 iOS 应用程序中使用向后滑动手势。我该怎么做?
我创建了 CupertinoPageRoute,希望它能以某种方式与它一起工作......
return MaterialApp(
initialRoute: AllProductsScreen.id,
onGenerateRoute: (RouteSettings settings) {
switch (settings.name) {
case AllProductsScreen.id:
return CupertinoPageRoute(
builder: (_) => AllProductsScreen(), settings: settings);
case ProductScreen.id:
return CupertinoPageRoute(
builder: (_) => ProductScreen(), settings: settings);
case FavoritesScreen.id:
return CupertinoPageRoute(
builder: (_) => FavoritesScreen(), settings: settings);
default:
return CupertinoPageRoute(
builder: (_) => AllProductsScreen(), settings: settings);
}
},
);
解决方案
您可以onWillPop
从 cupertino_will_pop_scope库中使用。
@override
Widget build(BuildContext context) {
return ConditionalWillPopScope(
child: _MyScreenContent(),
onWillPop: _onWillPop,
shouldAddCallbacks: _hasChanges,
);
}
推荐阅读
- python-3.x - 使用继承时 __init__() 中的参数数量问题
- reactjs - 如何在 Reactjs 中关闭 Modal?
- android - Android Studio 可以正确加载文件内容
- google-sheets-formula - 如何查找多个子值
- javascript - requestAnimationFrame 和鼠标事件中的时间戳顺序
- javascript - 动画 SVG 使路径中的连接平滑
- c - 根据 CS50 的 pset3 潮人中的 check50 排序对不起作用
- r - Rcpp 代理模型和 R 内存分配
- algorithm - 找到这个递归函数的递归关系?
- expo - 如何在移动应用中选择展会发布渠道?