Как предотвратить одновременное появление нескольких предупреждений UIAlertView? - PullRequest
0 голосов
/ 03 августа 2010

В моем приложении с вкладками есть три вкладки, каждая со своей навигационной структурой. Несколько просмотров моего приложения загружают данные через вызовы веб-сервисов. Эти представления регистрируют это уведомление, чтобы знать, когда приложение становится активным, чтобы они могли перезагрузить данные:

    [[NSNotificationCenter defaultCenter] addObserver:self 
        selector:@selector(reloadView) name:UIApplicationDidBecomeActiveNotification 
        object:NO];

Когда приложение становится активным, все эти представления пытаются перезагрузить свои данные; однако, если нет подключения к Интернету, ошибки обнаруживаются, и пользователю показывается UIAlert. Проблема в том, что если 3 из этих представлений пытаются перезагрузить данные, всплывают 3 сообщения с предупреждением.

Как предотвратить появление нескольких предупреждений для пользователя?

Я ценю все ваши мысли, идеи и предложения !!

Спасибо!

Бред

Редактировать: я пытался вставить это в appDelegate, но даже используя этот метод, я, кажется, получаю несколько всплывающих окон.

-(void)displayAlertWithTitle:(NSString *)title message:(NSString *)message delegate:(id)delegate{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:title message:message delegate:delegate cancelButtonTitle:@"Cancel" otherButtonTitles:@"Retry",nil];
[alert show];
[alert release];

}

1 Ответ

2 голосов
/ 03 августа 2010

Следите за тем, отображается ли предупреждение в данный момент (или было недавно отклонено).Другого пути на самом деле нет.

Если вы добавите функциональность в свой делегат приложения, вы можете просто сделать что-то вроде [(MyAppDelegate*)[UIApplication sharedApplication].delegate displayNetworkFailureDialog].

РЕДАКТИРОВАТЬ: Примечаниечто некоторые люди могут нахмуриться из-за залипания случайного глобального беспорядка в вашем делегате приложения ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...