【发布时间】:2018-08-31 09:33:24
【问题描述】:
在react-native 中,有时阻止父级捕获和处理触摸/单击事件同时允许其子级接收和响应事件是有用的。具体来说,这在使用<View/> 或<ImageBackground/> 容器作为其子元素的透明背景时很有用(例如:基于渐变的阴影或用于绝对定位元素居中的包装视图)。
【问题讨论】:
标签: javascript css reactjs react-native mobile
在react-native 中,有时阻止父级捕获和处理触摸/单击事件同时允许其子级接收和响应事件是有用的。具体来说,这在使用<View/> 或<ImageBackground/> 容器作为其子元素的透明背景时很有用(例如:基于渐变的阴影或用于绝对定位元素居中的包装视图)。
【问题讨论】:
标签: javascript css reactjs react-native mobile
React Native 为 <View/> 元素提供了一个 pointerEvents 属性,可以将其设置为 'none' 以停止对触摸和点击做出反应,但是让孩子仍然可以触摸的诀窍是设置 @ 987654324@ 支持 'box-none' 而不是 'none'。
警告: 与常规 CSS 相比,pointerEvents 是 ` prop 而不是 style。所以要使用它,你可以这样做
<View style={styles.parentWithoutTouchEvents} pointerEvents='box-none'>
<View style={styles.touchableChild}>
</View>
</View>
【讨论】: