在 React Native 上传递触摸事件

Pass through touch events on React Native

我们构建了一个 React Native 平板电脑信息亭应用程序,它向前台的用户显示多页输入字段。用户必须填写所有表格并在最后发送。

用户可以随时离开自助服务终端,这将导致他们的最后一个屏幕成为下一个用户的 "welcome screen"。为避免这种情况,如果没有用户交互(屏幕上的任何触摸事件),应用会在一段时间后重置。

现在,我们使用倒计时并在每个输入字段、按钮和背景触摸上重置它。这导致将重置回调传递给许多组件。能用,但就是冗余太多,很容易出错。

有什么办法,我们可以在视图的最顶部添加一个覆盖层,它可以捕获所有触摸事件并调用重置回调,同时也可以将触摸事件传递给下面的视图?因此,当用户单击按钮时,叠加层会调用其回调,但也会单击按钮(输入字段等相同)。

我们也尝试了手势响应系统,但无法让触摸事件通过——它总是被带有手势响应系统的组件消耗掉。

您可以尝试将 pointerEvents 属性添加到您的 View