Nad*_*ine 9 uitouch ios react-native react-native-ios
我正在开发 RN 应用程序,该应用程序有一个屏幕,其中包含“可绘制”区域的列表。所以这个屏幕应该是可滚动和可绘制的。
我想做的 - 是找到一种解决方案来区分来自手指(这些将用于滚动和禁止绘图)和通过 Apple Pencil 的手写笔(这些将用于绘图和禁止滚动)的触摸事件。
在 Gesture Responder 和 PanResponder 中,每次移动都会传递事件。每个事件(以及 nativeEvent )都包含type属性。但是,在模拟器和设备中它对我来说始终为空。
有没有办法将移动事件识别为手指与手写笔?
我们对我们的一个项目有类似的要求,我们所做的就是使用一个Pressable组件,将 handlePress 函数作为 prop 传递给该组件。该函数接受GestureResponderEventas 事件回调参数。通过使用最近添加的event.nativeEvent.altitudeAngle 属性,我们能够检测 Apple Pencil 触摸。
function handlePress(event: GestureResponderEvent) {
//@ts-expect-error React Native Types do not include altitudeAngle
const isPencilTouch = !!event.nativeEvent.altitudeAngle;
...
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2264 次 |
| 最近记录: |