UITextField в UIView в UIAlertView не работает? - PullRequest
2 голосов
/ 20 июня 2011

В моем приложении для iPhone, если я добавлю uitextfield в uialertview, он будет работать нормально, если я добавлю его в uiview и если uiview добавлен в uialertview, он не работает. Становится странным?
Пожалуйста, помогите, если кто-нибудь знает об этом! Спасибо.
Примечание: здесь UItextField не работает означает, что он не принимает никаких входных данных, но интересно то, что, если щелкнуть по нему клавиатуру, его делегат также не получает вызова.

Ответы [ 3 ]

1 голос
/ 20 июня 2011

просто добавьте временное текстовое поле в вашем оповещении. Смотрите ниже вашего

      tf = [[[UITextField alloc] initWithFrame:CGRectZero] autorelease]; 
      [alertView addSubView:tf];

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

0 голосов
/ 03 августа 2011

Я только что создал сообщение, которое может решить вашу проблему.

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

http://creiapp.blogspot.com/2011/08/how-to-add-uitextfield-to-uialertview.html

0 голосов
/ 01 августа 2011

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

- (void)drawRect:(CGRect)rect {
    self.bounds = CGRectMake(0, 0, 284, 248);
    int i = 0;
    for (UIView*classW in  self.subviews) {
        if ([NSStringFromClass([classW class]) isEqualToString:@"UIThreePartButton"]) {
            classW.frame = CGRectMake(11+135*i, 189, 127, 43);
            i++;
        }

        if ([NSStringFromClass([classW class]) isEqualToString:@"UIView"]) {
            classW.backgroundColor = [UIColor redColor];
            CGRect f = classW.frame;
            f.size.height += 30;
            classW.frame = f;
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...