我已经从反应导航5升级到6:
- "@react-navigation/bottom-tabs": "^5.10.6",
- "@react-navigation/material-top-tabs": "^5.3.15",
- "@react-navigation/native": "^5.8.6",
- "@react-navigation/routers": "^5.6.0",
- "@react-navigation/stack": "^5.12.3",
- "react-native-gesture-handler": "1.10.3",
NEW DEPS:
+ "react-native-gesture-handler": "^2.7.0",
+ "@react-navigation/bottom-tabs": "^6.2.4",
+ "@react-navigation/material-top-tabs": "^6.3.0",
+ "@react-navigation/native": "^6.0.13",
+ "@react-navigation/routers": "^6.1.3",
+ "@react-navigation/stack": "5.14.9",升级后,我注意到在Android 8和9上,一些堆栈屏幕有一些关闭当前屏幕的功能,可以自上而下地滑动。
添加gestureEnabled: false作为导航器或屏幕选项似乎没有任何效果。
屏幕截图,上下滑动接近:


见附件视频:https://drive.google.com/file/d/1Xt08w7S-bFXcOMx01WAzHGwLvLLwAl7e/view
发布于 2022-11-23 10:28:22
看看有问题的堆栈屏幕的内容。
检查视图是否使用ScrollView组件。
如果是的话,尝试使用来自ScrollView react-native-gesture-handler库的而不是react本机。
发布于 2022-11-28 10:17:46
在我的示例中,根导航器具有gestureEnabled: true,并且由于某种原因,嵌套堆栈导航器无法在Android8和9上覆盖该值。
我必须在根堆栈导航器中将其设置为false,以使其也适用于嵌套导航器。
screenOptions={{
gestureEnabled: false
}}注意: github中有多个与Android的属性如何工作有关的问题。有些人申请了一个解决办法,作为一个巨大的滑动门槛。
https://stackoverflow.com/questions/74537431
复制相似问题