ios - React Native 按住,将手指拖动到另一个可触摸并通过该 View 捕获触摸

标签 ios react-native touch gesture

在我的 React Native 应用程序中,我试图拥有一个用户可以长按且无需抬起手指就能与另一个 View 交互的按钮。这大致是我想要的:
enter image description here
enter image description here
enter image description here
enter image description here
可以将其想象为 iOS 13/14 之前 3D 触摸/长按的工作方式(取决于系统和设备中的位置):用户 3D 触摸或长按按钮,例如应用程序图标,然后弹出上下文菜单。然后,用户可以在不抬起手指的情况下将鼠标悬停在其中一个按钮上并松开手指,从而触发按钮点击。
我可以完全控制我的按钮、可触摸项和 View (甚至标签栏也是自定义的,与我在上面制作的插图相反)。
我怎样才能做到这一点? (我在 React Native 0.63 上)

最佳答案

可能有更好的解决方案,但我想我会使用手势响应系统
https://reactnative.dev/docs/gesture-responder-system
您可以拥有一个包含标签栏和按钮的容器 View 。然后收听onResponderMove事件来决定这些按钮应该何时出现。例如,当 locationY超过某个值。
您也可以使用 onResponderRelease事件(再次借助 locationX locationY 参数)来确定手指是否在按钮上方释放。

关于ios - React Native 按住,将手指拖动到另一个可触摸并通过该 View 捕获触摸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64341357/

相关文章:

ios - Twitter API 如何知道一个用户是否关注另一个用户?

ios - 自定义 UIPopover 在 iOS 6 上有奇怪的阴影

javascript - 如何在二维码扫描仪中生成背景扫描线

ios - 从图像获取触摸坐标,同时保持平移/缩放功能

java - 不显示 MotionEvent.ACTION_UP 或 MotionEvent.ACTION_CANCEL

ios - 无法使用 MPMoviePlayerController 播放视频文件

ios - 如何在 swift 2.2 中捕获 NSUnknownKeyException?

reactjs - 使用reactjs中的props更改更新状态值

react-native - 如何切换 react 抽屉导航

linux - 如何在 bash 脚本中确定触摸屏设备?