Заголовок для UIAlertController не отображается iOS 8.0

Я обновил XCode 6.0.1, iOS 8.0 и после этого использовал UIAlertController вместо UIAlertView, но заголовок для UIAlertController не появляется. Для справки см. код:

UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"AlertView"    message:@"Please Click" preferredStyle:UIAlertControllerStyleAlert];
UIAlertAction* defaultAction = [UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault handler:^(UIAlertAction * action) 
{
}];

UIAlertAction* cancel = [UIAlertAction actionWithTitle:@"Cancel" style:UIAlertActionStyleDefault handler:^(UIAlertAction * action) 
{
    [alert dismissViewControllerAnimated:YES completion:nil];
}];

[alert addAction:defaultAction];
[alert addAction:cancel];
[self presentViewController:alert animated:YES completion:nil];

person user1006951    schedule 22.09.2014    source источник
comment
Можете ли вы включить скриншот того, что вы видите? У вас нет никаких кнопок?   -  person Jesse Rusak    schedule 22.09.2014
comment
К сведению: вы понимаете, что создали этот UIAlertController как список действий, а не как представление предупреждений.   -  person rmaddy    schedule 22.09.2014


Ответы (1)


То, что вы представляете, на самом деле является листом действий, который не эквивалентен UIAlertView. Вы должны изменить preferredStyle, использовать UIAlertControllerStyleAlert вместо UIAlertControllerStyleActionSheet:

UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"AlertView" message:@"Please Click" preferredStyle:UIAlertControllerStyleAlert];
[self presentViewController:alert animated:YES completion:nil];

Теперь, где кнопки? Например, вы можете добавить (перед presentViewController):

[alert addAction:[UIAlertAction actionWithTitle:@"Ok" style:UIAlertActionStyleDefault handler:nil]];

А затем создайте действие для реализации handler.

person Paulo Rodrigues    schedule 22.09.2014
comment
Ничто из этого не касается фактического вопроса - где заголовок? И лист действий, и представление предупреждений могут отображать заголовки. - person rmaddy; 22.09.2014
comment
@rmaddy Та же проблема возникает как с предпочтительным стилем: UIAlertControllerStyleActionSheet, так и с UIAlertControllerStyleAlert, заголовок не отображается. Найдите скриншоты скринкаста. com/t/nh4JwBqgllPq screencast.com/t/udhbUwNVKE - person user1006951; 23.09.2014
comment
Судя по этим снимкам экрана, у Alert есть заголовок, но нет сообщения. В ActionSheet есть сообщение, а не заголовок. Можете ли вы обновить свой вопрос полным фрагментом кода? Кажется, отсутствует некоторая информация, которую вы нам не сообщили. - person Paulo Rodrigues; 23.09.2014