UITextField в UIAlertView альтернативы? - PullRequest
1 голос
/ 14 октября 2011

Я хочу быстрый ввод от пользователя. Я знаю, что могу поместить UITextField в UIAlertView, но это своего рода «взлом». Есть ли официальный / альтернативный способ сделать это?

Довольно удивительно, что для такого типичного сценария нет контроля.

Спасибо

UPDATE: Пробовал EGOTextFieldAlertView, но вот результат: enter image description here

и код:

   EGOTextFieldAlertView *alert = [[EGOTextFieldAlertView alloc] initWithTitle:@"Enter the group name" 
                                                                        message:nil 
                                                                       delegate:self 
                                                              cancelButtonTitle:@"Cancel" 
                                                              otherButtonTitles:@"OK", nil];
    [alert addTextFieldWithLabel:@"Name"];
    [alert show];
    [alert release];

Ответы [ 4 ]

5 голосов
/ 14 октября 2011

Если вы хотите использовать iOS 5, это уже не хак.UIAlertView теперь имеет свойство alertViewStyle, которое при значении UIAlertViewStylePlainTextInput добавляет одно текстовое поле к предупреждению, которое можно получить с помощью -[UIAlertView textFieldAtIndex:].

Если вам все еще требуется 4.3 или более ранняя версия, то нетОфициального способа сделать это не существует, и это действительно большой хак, который наравне с вызовом SPI.

0 голосов
/ 28 февраля 2012

У меня была точно такая же проблема, я ее исправил и, похоже, работает как в iOS 4.3, так и в 5.0.Кажется, есть и другие классы, которые отбрасывают вычисление значения offsetY.Вместо обновления offsetY для всех классов, не относящихся к UIControl, я изменил его, чтобы обновлять только для классов UILabel.

Вот мое исправление в EGOTextFieldAlertView.m в layoutSubviews

изменить эту строку: if(![view isKindOfClass:[UIControl class]]) {
на: if([view isKindOfClass:[UILabel class]]) {

0 голосов
/ 14 октября 2011

Если вы ищете альтернативный способ, вы можете создать пользовательский UIView, который будет выглядеть как представление оповещения, добавить его в качестве подпредставления и сделать анимацию как представление оповещения.

0 голосов
/ 14 октября 2011

Проверить EGOTextFieldAlertView .

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