React native 反应本机:模式未显示

React native 反应本机:模式未显示,react-native,react-native-modal,React Native,React Native Modal,我是react native新手,我正在尝试用以下代码在react native中显示模态 <View> <View onPress={() => {this.toggleModal(true) }} onBackdropPress={ () => {this.hideModal(false)}}> <View> <OcticonsIcons name='plus' si

我是react native新手,我正在尝试用以下代码在react native中显示模态

      <View>
    <View onPress={() => {this.toggleModal(true) }}  onBackdropPress={ () => 
   {this.hideModal(false)}}>

        <View>
            <OcticonsIcons name='plus' size={19}/>

            <Text>QUICK ACTION</Text>
        </View>

        <View>
            <View>
                <Image source={require('../images/truck.png')} 
                />
                <Image source={require('../images/taxi(1).png')} 
                />
                <Image source={require('../images/tour.png')} 
                />
            </View>
        </View>

     </View>

    </View>
    <Modal visible={this.state.isModalVisible} animationType = "slide" transparent = 
    {false}>
            <View style={{ flex: 1 }}>
             <Text style={{ fontWeight:'bold', fontSize: 20, color: '#f79334', marginTop: 15 
      }} > Services </Text>
            </View>
      </Modal>


  toggleModal(visible){
   this.setState({ isModalVisible: visible });
  }

    hideModal(visible){
   this.setState({ isModalVisible: visible })
   }

{this.toggleModal(true)}}onBackdropPress={()=>
{this.hideModal(false)}>
快速行动
服务
切换模式(可见){
this.setState({isModalVisible:visible});
}
隐藏的(可见的){
this.setState({isModalVisible:visible})
}

但它不起作用,谁能告诉我我的代码有什么问题,谢谢

问题是你不能在组件上使用onPress功能,它只用于显示。要使用onPress,必须使用TouchableOpacity

检查以下代码:

 <View>
    <TouchableOpacity onPress={() => {this.toggleModal(true) }}  onBackdropPress={ () => 
   {this.hideModal(false)}}>

        <View>
            <OcticonsIcons name='plus' size={19}/>

            <Text>QUICK ACTION</Text>
        </View>

        <View>
            <View>
                <Image source={require('../images/truck.png')} 
                />
                <Image source={require('../images/taxi(1).png')} 
                />
                <Image source={require('../images/tour.png')} 
                />
            </View>
        </View>

     </TouchableOpacity>

    </View>
    <Modal visible={this.state.isModalVisible} animationType = "slide" transparent = 
    {false}>
            <View style={{ flex: 1 }}>
             <Text style={{ fontWeight:'bold', fontSize: 20, color: '#f79334', marginTop: 15 
      }} > Services </Text>
            </View>
      </Modal>


  toggleModal = (visible) =>{
   this.setState({ isModalVisible: visible });
  }

    hideModal = (visible) => {
   this.setState({ isModalVisible: visible })
   }

{this.toggleModal(true)}}onBackdropPress={()=>
{this.hideModal(false)}>
快速行动
服务
toggleModal=(可见)=>{
this.setState({isModalVisible:visible});
}
hideModal=(可见)=>{
this.setState({isModalVisible:visible})
}

希望能有帮助。如有疑问,请放心

此处我的模式已打开,我可以单击关闭按钮关闭模式。但我的问题是,如果我打开一次,然后什么也没做。手机进入睡眠模式。有时我会打开应用程序。它无法显示模式,如果我单击文本terns和service,它将不响应。有什么建议吗