有没有办法在pointerEvents
上设置none
到Modal
?我试图在父母边界之外渲染子视图,我唯一能做到这一点的方法是使用Modal
。忽略孩子的pointerEvents
似乎无效。
<View>
<View style={{flex: 1, backgroundColor: 'red'}}></View>
<Modal
animationType='fade'
transparent={true}
visible={true}
pointerEvents='none'>
<View style={{flex:1, alignItems: 'center', justifyContent: 'center'}} pointerEvents='none'>
</View>
</Modal>
</View>
答案 0 :(得分:0)
我不知道您是否是这个意思,因为您的描述对我来说还不够清楚...但是我前段时间也需要一个Modal,如果我在应用程序中的任意位置轻按,就不能关闭它,但是仅当我执行了给定的动作(对我来说,这是给定的点击路线后的Modal中的Buttonclick)。
这是我解决问题的方法:我使用react-native-modalbox
,这样做确实很好。
有了很多可能的选项,您还可以处理模式的点击行为。
一个小例子:
import Modal from 'react-native-modalbox';
...
...
<Modal
style={[styles.audioToolbarModal, styles.audioToolbarBottomModal]}
position="bottom"
backdrop
swipeToClose={false}
coverScreen
onOpened={() => this.startRecording()}
isDisabled={modalIsDisabled}
ref={(ref) => { this.audioToolbar = ref; }}
>
您可能需要的属性是“ isDisabled”(通过“状态”进行设置以进行切换),然后swipeToClose={false}
我希望能帮到您。