问题标签 [react-native-gesture-handler]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
react-native - 在 react-native 中浮动放大“类似 instagram”的新闻提要的图像
我正在为现有的 react native (0.63.4) 应用程序开发“类似 instagram”的新闻提要。在这个阶段,我使用(1.10) 来使用它的和实现react-native-gesture-handler
来处理捏合/缩放功能。PinchGestureHandler
FlatList
我有一个用于滚动新项目的外部垂直平面列表,对于每个项目,我有一个用于左右滚动图像的内部水平平面列表。
如果我内联缩放图像,那么它可以正常工作,尽管由于必须重新布局所有其他项目,它有点慢。
我想做的是将图像“浮动”在其他所有内容之上,然后在缩放后恢复。我可以做所有这些,除了浮动图像。我试过overflow:'visible'
在整棵树上设置,但它没有帮助zIndex
,elevation
也似乎没有帮助。
从视觉上看,我想(有点)在缩放时弹出图像,然后它可以在最后恢复。我该怎么做呢?
--实现细节:提要只是一个数组NewsItem
:
imageRefs
是所有图像的扁平化参考列表。
主要布局是这样的(稍微简化):
NewsItem
NewsImage
具有处理存储在变量中的捏/缩放变换的所有代码:
scale
scaledWidth
scaledHeight
xScaledTranslate
yScaledTranslate
随着布局:
react-native - 我在 ExpoKit 下的 RNGestureHandler.h 文件中生成了构建错误。未知类型名称“RNGestureHandlerState”
我在 ExpoKit 下的 RNGestureHandler.h 文件中生成了构建错误。未知类型名称“RNGestureHandlerState”。这个问题是在我将 expo 从项目中分离出来之后发生的。
我尝试了修复,我看到将 #import <XXX.h> 更改为 import "XXX.h" 但错误仍然存在。
react-native - 本机基础页脚在本机反应中接受玩家的触摸
我有一个MainFooter
组件,其中包含页脚和迷你播放器,单击时会动画到全视图。我有一个问题,每当我们单击一个页脚选项卡时,播放器都会最大化,然后只卡在那里,没有响应。
此外,单击播放器内部的向下箭头图标不会将其最小化,单击 MiniPlayer 也不会使其最大化,但我们可以通过单击并将 MiniPlayer 拖动到全视图来最大化 MiniPlayer,对于最大化的播放器也是如此。
这是MainFooter
组件:
这是FooterTabsContainer
组件:
如果出现以下情况,我将不胜感激任何关于为什么会发生这种情况的帮助或评论:
- 修复了单击任何页脚选项卡时最大化 MiniPlayer 的问题。
- 修复了点击向下箭头图标时 MiniPlayer 未最大化点击和全视图播放器未最小化的问题
我正在使用"react-native-reanimated": "^1.13.2"
, "react-native-redash": "^8.0.0"
,"native-base": "^2.15.2"
和"react": "16.13.1", "react-native": "^0.64.0",
"react-native-gesture-handler": "^1.9.0"
最大化播放器
迷你播放器:
reactjs - 如何通过 React Native 中的捏手势处理程序设置最小比例?
我在 React Native 中使用 Gesture Handler 库中的捏和平移。到目前为止,它运行良好,但我一直在努力解决一个新问题。我想为比例设置一个最小值 1,以便用户不能将图像缩小到超过原始图像的比例 1。我希望能够放大到大于 1 的比例值,但我没有'不希望比例值小于 1,因此当用户尝试以比例小于 1 的方式缩小图像时,缩放应该停止。我该怎么做?
而在 XML 中,Pinch 是这样的:
javascript - 无法从 /User 解析模块 react-native-gesture-handler/Swipeable
我正在尝试向我的应用程序中的列表添加一点滑动手势。我导入了“从'react-native-gesture-handler/Swipeable'导入Swipeable;” 现在我收到以下错误:
*undefined 无法从 /Users/../../ListItem.js 解析模块 react-native-gesture-handler/Swipeable:在项目中找不到 react-native-gesture-handler/Swipeable。如果您确定该模块存在,请尝试以下步骤:
- 清除守望者手表:watchman watch-del-all
- 删除 node_modules 并运行 yarn install
- 重置 Metro 的缓存:yarn start --reset-cache
- 删除缓存:rm -rf /tmp/metro-**
老实说,我不确定如何处理最后四个步骤
这是一些代码:
有任何想法吗?:(
expo - 在 Android 模式中 - 在 GestureHandlerRootView 中包装内容不修复 react-native-gesture-handler
我正在使用博览会 ^40.0.0。
我正在尝试让 react-native-gesture-handler 组件<Modal>
在 Android 中的 react-native 中工作。我在这里关注了文档 - https://docs.swmansion.com/react-native-gesture-handler/docs/#for-library-authors
它保持包裹<GestureHandlerRootView>
,我这样做了,但它不能解决问题。
我创建了一个问题的小吃演示 - https://snack.expo.io/@noitidart/frisky-carrot
在这里,您会看到“点击此处计数:0”。请尝试点击它,您会看到它不会增加计数器。
您将看到一个“RN BUTTON”,它有效,但它不是来自 react-native-gesture-handler。
这是我的小吃代码:
react-native - 潘响应者自动禁用视频录制
我有一个按钮,当长按时,它会开始录制视频。只要手指按住视频,视频就会录制,当您抬起手指时,视频就会停止录制。
现在,当我添加一个平移响应器来查找人的手指位置时,我在录制时移动手指,录制会自动停止,而无需我抬起手指。
知道为什么会这样吗?
这是我的平移响应器功能:
这是我在长按上的录音功能:
这是我渲染的组件:
react-native - 自从我添加 React-Native-Gesture-Handler 以来,我收到“尝试注册两个同名的视图 RNGestureHandlerButton”
我最近将 React Native Navigation 添加到我的项目中,React Native Gesture Handler 是我也添加的依赖项之一。从那以后Tried to register two views with the same name RNGestureHandlerButton
,尽管没有使用 Expo,我还是会随机出错。作为参考,我在下面的 package.json 中附加了我的依赖项:
在运行“react-native info”时,我得到:
如果我能提供任何有助于解决此问题的进一步信息,请告诉我。我正在使用 Windows 的 Android 模拟器上运行这个项目。谢谢!
react-native - 无法在 React Native View 上检测到手指释放
我有一个包装平面列表的视图。每个项目都是一个视频,我只想在手指松开时播放视频。尝试添加PanResponder
功能以触发onResponderRelease
by 设置onStartShouldSetPanResponderCapture
返回 true,如下所示:
这确实触发了发布,我能够控制台.log 但是平面列表停止接收触摸并且它变得不可滚动。
我的目标是在视图上拖动后检测手指释放。也尝试过onScrollEndDrag
,但它仅适用于平面列表,如果我将手指从列表中抬起,则不会触发释放。
typescript - useAnimatedGestureHandler onStart 方法正确的上下文参数类型
TL; DR 有没有人有任何示例什么是正确的泛型用于 useAnimatedGestureHandler?
问题:
我正在关注关于 Reanimated 2 手势动画的本教程。有这个例子:
我使用打字稿,当我在打字稿中复制示例时,我得到ctx
参数(上下文)类型错误:
Property 'offset' does not exist on type '{}'.
在 onStart 声明中进行一些窥探后,我发现 GestureHandlers 的完整类型需要通用<T, TContext extends Context>
:
解决方法:
我可以通过简单地传递一个实用程序类型 Record(这与说“任何”几乎相同)来解决这个问题,我不喜欢这样。
问题:
有没有人有任何示例正确的泛型用于 useAnimatedGestureHandler 吗?