UIAlertView, как разместить внутри него много кнопок? - PullRequest
1 голос
/ 26 сентября 2011

В UIAlertView, как я могу разместить много кнопок внутри него?У меня есть окно с предупреждением, и я хочу разместить в нем десять кнопок, но когда они на месте, они не помещаются на экране?Кроме того, как мне сделать так, чтобы кнопки выглядели немного по-другому, и как я могу изменить их размеры?

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Фильтр по категориям" message:@"Выбирите категорию:" delegate:self cancelButtonTitle:@"Отменить" 
                                          otherButtonTitles:@"Все", @"Избранное", @"Тосты", @"Рассказы", @"Стихи", @"Анекдоты", @"Афоризмы", @"Объявления", @"Разное", nil];

На английском языке:

UIAlertView * alert = [[UIAlertView alloc] initWithTitle: @ "Filter by Category" message: @ "Choose a category:" delegate: self cancelButtonTitle: @ "Cancel"
                                       otherButtonTitles: @ "All", @ "Music", @ "Toast", @ "Stories", @ "Poems", @ "Jokes", @ "Aphorisms", @ "Announcements", @ "Other", nil];

Ответы [ 3 ]

3 голосов
/ 26 сентября 2011

Лориан верен.

На iPhone, для выбора фильтра категории, вы должны использовать модальный ViewController (с presentModalViewController), который перевернет ваш главный вид, позволит им выбрать свою категорию и затем исчезнет.

На iPad вы должны использовать UIPopoverController.

3 голосов
/ 26 сентября 2011

Вы не должны размещать десять кнопок внутри UIAlertView.

Я не знаю русского языка, поэтому не имею понятия о контексте вашей проблемы.Но нет никаких причин ставить так много вариантов в виде предупреждения.

1 голос
/ 26 сентября 2011

Возможно, вы захотите взглянуть на альтернативные реализации представления предупреждений https://github.com/TomSwift/TSAlertView

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

...