原文出处:https://blog.csdn.net/ouxiaohui111/article/details/53463054
如果需要a弹框后再调用b弹框,必须在a弹框的逻辑里把a弹框先dismiss掉,然后在a弹框的onDidDismiss的方法里调用弹框b,这样才能流畅(不卡死或闪屏)的切换弹框
constructor(private alertCtrl: AlertController) {
}
presentAlert() {
let alerlOne = this.alertCtrl.create({
title: 'text1',
subTitle: 'text2',
buttons: ['Dismiss']
});
alerlOne.present();
}
presentConfirm() {
let alertTwo = this.alertCtrl.create({
title: 'Confirm purchase',
message: 'Do you want to buy this book?',
buttons: [
{
text: 'Cancel',
role: 'cancel',
handler: () => {
}
},
{
text: 'Buy',
handler: () => {
//1、把自己 dismiss
alertTwo.dismiss();
//2、调用另一弹框
alertTwo.onDidDismiss(() => {
this.presentAlert();
})
}
}
]
});
alertTwo.present();
}