我正在使用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()
}}