You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native中如何让上层元素不拦截下层TouchableOpacity点击事件

实现方案

你的需求完全可以实现,只需要给上层的<Text>组件添加pointerEvents="none"属性即可。

pointerEvents是React Native内置的触摸事件控制属性,取值为none时,当前组件会完全不响应任何触摸交互,所有触摸事件会直接透传给下层可响应事件的组件,不会影响组件本身的渲染展示,刚好匹配你上层文本正常显示、点击透传给下层触发事件的需求。

修改后参考代码如下:

<View>
  <TouchableOpacity onPress={() => {
    // 此处写你的点击逻辑
  }} />
  <Text style={{position: 'absolute'}} pointerEvents="none">hello</Text>
</View>

如果后续需要给上层Text单独添加点击逻辑,只需要移除该属性或者调整为其他对应取值即可,不会影响现有业务逻辑。


内容的提问来源于stack exchange,提问作者gkeenley

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.17 22:15:05