如何访问在组件外部发生的OnPress事件?

时间:2019-03-26 11:54:57

标签: react-native

我正在React Native中创建一个自定义的下拉组件。当用户在应用程序任何其他部分的组件外部按屏幕时,我想关闭它的内容。

但是,我不知道用户是否在组件外部按下。是否有一个可以访问或以其他方式可以访问的全局OnPress事件,请告诉我。

1 个答案:

答案 0 :(得分:2)

编辑:

在单击下拉菜单时添加逻辑,它将创建一个透明的视图,以绝对位置覆盖整个屏幕。

这样做: //在渲染中

<Fragment>
         <Nested>
           <DropDown/>
         </Nested>

           {isDrop &&
            <View style={styles.container} // height:'100%', width:'100%', backgroundColor:transparent , position: 'absolute'
              //Trigger for pressing outside DropDown
               onResponderStart={() => { condition for dropdown}} 
              //Required to start interacting with touches
               onStartShouldSetResponder={(e) => {return true}}/>}

</Fragment>

DropDown组件和带触摸的视图必须处于同一级别