繁体   English   中英

反应本机ios警报相互覆盖

[英]react native ios alert overriding each other

我正在使用Alert.alert()在响应本机ios中显示警报。 我面临的问题是,如果出现相同消息的拖曳警报,它们将一个出现在另一个之上。

而在android中,关闭第一个警报后会出现第二个警报。

无论如何,使其在iOS中表现得像Android?

您可以添加某个状态布尔值来检查alert是否可见,例如

  state = {
    alertBoxVisible: false,
  }

  onAlertShow = () => {
    if(!this.state.alertBoxVisible) {
      this.setState({alertBoxVisible: true}, () => {
        Alert.alert(
          'Alert Title',
          'My Alert Msg',
          [
            {text: 'OK', onPress: () => this.setState({alertBoxVisible: false})},
          ],
          { cancelable: false }
        )
      })
    }
  }

并使用async await链接调用onAlertShow的函数,例如

onPress={async () => {
  await this.onAlertShow()
  await this.onAlertShow()
}}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM