我的UIAlertController
会自动消失,为什么?
-(void)marge_carburant{
NSString *quantite_carburant_reglementaire = [[NSUserDefaults standardUserDefaults] stringForKey:@"quantite_carburant_reglementaire"];
// PRISE EN CHARGE DU REGLAGE DE LA MARGE CARBU
if ([quantite_carburant_reglementaire isEqual: @"2"]){
quantite_reglementaire = 21;
}
if ([quantite_carburant_reglementaire isEqual: @"1"]){
quantite_reglementaire = 0;
UIAlertController *alert_carbu_reglementaire = [UIAlertController
alertControllerWithTitle:@"ATTENTION"
message:@"Le résultat ne prend pas en compte la quantité réglementaire"
preferredStyle:UIAlertControllerStyleAlert];
[self presentViewController:alert_carbu_reglementaire animated:YES completion:nil];
[self performSelector:@selector(dismissTheAlert) withObject:nil afterDelay:3.0];
}
}
- (void) dismissTheAlert {
[self dismissViewControllerAnimated:YES completion:^{}];
}
答案 0 :(得分:-1)
尝试下面一个。
3.0
* NSEC_PER_SEC是以秒为单位的延迟
[self presentViewController:alert_carbu_reglementaire animated:YES completion:nil];
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(3.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
[alert_carbu_reglementaire dismissViewControllerAnimated:YES completion:^{
// do something ?
}];
});
您可以在调用marge_carburant
函数时添加延迟,以防止在从视图调用时加载崩溃。