В моем классе модели я хочу показать предупреждение, когда произойдет что-то плохое (например, сервер отправит ошибку). Тем не менее, я не хочу беспокоиться с делегатом или KVO.Существующий контроллер предупреждений в главном окне приложения?
Есть ли простой способ показать предупреждение для «главного» окна, чтобы разместить представление над другими?
В настоящее время я использую этот код (не работает, если установлено из классов ViewController):
UIAlertController *vc = [UIAlertController alertControllerWithTitle:@"Произошла ошибка"
message:response
preferredStyle:UIAlertControllerStyleAlert];
[self presentViewController:vc animated:YES completion:^{
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
[vc dismissViewControllerAnimated:YES completion:nil];
});
}];
Очевидно, что классы, которые не имеют использовать вид косяка:
[self presentViewController:vc animated:YES completion:^{
Почему вы не хотите беспокоиться с делегатом или KVO. –
Эффект @MikeAlter будет таким же, но больше работы. –
одно решение будет помечено предупреждение, показывающее способ appdelegate и показать его с помощью диспетчера верхнего уровня, может помочь –