【问题标题】:Prevent parent from being clickable while allowing child to capture touches防止父母被点击,同时允许孩子捕捉触摸
【发布时间】:2018-08-31 09:33:24
【问题描述】:

react-native 中,有时阻止父级捕获和处理触摸/单击事件同时允许其子级接收和响应事件是有用的。具体来说,这在使用<View/><ImageBackground/> 容器作为其子元素的透明背景时很有用(例如:基于渐变的阴影或用于绝对定位元素居中的包装视图)。

【问题讨论】:

    标签: javascript css reactjs react-native mobile


    【解决方案1】:

    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>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-07-13
      • 2011-10-14
      • 1970-01-01
      • 2011-11-10
      • 2021-09-26
      • 2023-03-29
      • 1970-01-01
      相关资源
      最近更新 更多