2015-07-28 4 views
0

Я не получаю поведение, которое я ожидаю от текстового поля. Раньше у меня был экземпляр textFields через раскадровку или Xib. Когда я нажимаю в границах текстовых полей, он становится первым ответчиком, и когда я нажимаю на него, он уходит в отставку с первого ответчика.Внедрение UITextField программно

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

- (void)createTextField { 
    self.searchField = [[UITextField alloc] initWithFrame:CGRectMake(25, 25, 250, 35)]; 
    self.searchField.delegate = self; 
    //[self.searchField becomeFirstResponder]; 
    [self.mapView addSubview:self.searchField]; 
    self.searchField.borderStyle = UITextBorderStyleRoundedRect; 
    self.searchField.placeholder = @"type here"; 
    self.searchField.backgroundColor = [UIColor redColor]; 
    self.searchField.userInteractionEnabled = YES; 
    self.searchField.clipsToBounds = YES; 
} 
+0

Возможный дубликат [Скрытие клавиатуры при потере фокусировки на UITextView] (http://stackoverflow.com/questions/1456120/hiding-the-keyboard-when-losing-focus-on-a-uitextview) – Epicblood

ответ

1

UITextField не уйдет в отставку первый ответчик при касании снаружи. Вы должны сделать это программно, как this answer, или еще один UIResponder стать первым ответчиком.

+0

Основная проблема, с которой я сталкиваюсь, заключается в том, что текстовое поле не становится первым ответчиком при прослушивании. –

+0

Я нашел ошибку. Это связано с отображением карты Google. В соответствии с инструкциями googles я устанавливал представление карты на представление контроллера моего вида, например: self.view = self.mapView. Как бы то ни было, когда я добавляю свое текстовое поле как subView либо к self.view, либо к self.mapview (либо должно быть нормально?), Это нарушает поведение текстовых полей. –

Смежные вопросы