2016-01-24 2 views
0

У меня возникли проблемы с получением UIAlert, возвращающим логическое значение, и я не мог найти что-либо в сети, поэтому я надеялся, что вы, ребята, сможете помочь. Во-первых, это то, что основная настройка app. В основном, когда пользователь нажимает кнопку «клик», появляется предупреждение, с вариантами «ДА» и «НЕТ». Вот код, у меня есть настройки для кнопки до сих пор:Возвращение булевых из UIAlertAction

UIAlertController * alert = [UIAlertController alertControllerWithTitle:@"Choose" 
                   message:@"Answer the question" preferredStyle:UIAlertControllerStyleAlert]; 
UIAlertAction *defaultAction= [UIAlertAction actionWithTitle:@"YES" 
                 style:UIAlertActionStyleDefault 
                handler:nil]; 
UIAlertAction *noAction= [UIAlertAction actionWithTitle:@"NO" style:UIAlertActionStyleDefault handler:nil]; 
[alert addAction:defaultAction]; 
[alert addAction:noAction]; 
[self presentViewController:alert animated:YES completion:nil]; 

Как я могу точно использовать опцию завершения возвращать логическое значение?

+0

Вы ничего не можете найти? В самом деле? Как насчет следующей темы? http://stackoverflow.com/questions/28831468/x-code-obj-c-retrieve-user-inputed-text-from-alert-box-ios8 Я могу найти больше. –

+0

Вы ничего не можете вернуть из обработчика действий, но вы можете установить переменную, которую вы проверяете после отклонения контроллера. – Avi

ответ

0

Использовать обработчик завершения в самом UIAlertAction. Например,

UIAlertAction *noAction= [UIAlertAction actionWithTitle:@"NO" style:UIAlertActionStyleDefault handler:^(UIAlertAction * action) 
           { 
            NSLog(@"NO"); 
            [alert dismissViewControllerAnimated:YES completion:nil]; 

           }]; 
Смежные вопросы