2014-01-17 3 views
0

У меня есть 3 текстовых поля.iOS Клавиатура не снимается

Первые две записи позволяют использовать стандартную клавиатуру, в последнем текстовом поле отображается сборщик.

У меня возникли проблемы с увольнением клавиатур - поэтому при нажатии на текстовое поле 3 появляется панель выбора, однако клавиатура из предыдущего текстового поля остается на экране.

Каждый из моих текстовых полей имеет тег, и я использую следующий код:

-(void)textFieldDidBeginEditing:(UITextField *)textField { //Keyboard becomes visible 

    if (textField.tag == 1) { 
     [_textField2 resignFirstResponder]; 
     _myPicker.hidden = true; 
    } 

    if (textField.tag == 2) { 
     [_textField1 resignFirstResponder]; 
     _myPicker.hidden = true; 
    } 

    if (textField.tag == 3) { 
     [_textField1 resignFirstResponder]; 
     [_textField1 resignFirstResponder]; 
    } 

} 

Любые идеи о том, как это исправить?

ответ

0

Убедитесь делегат TextField установлен в классе этот код находится в

Это может быть сделано в Interface Builder или с помощью:.

[_textField1 setDelegate:self]; 
[_textField2 setDelegate:self]; 

в viewDidLoad

обеспечивают также класс соответствует протоколу UITextFieldDelegate

+0

Привет, я установил этот делегат в порядке. Я могу попасть в метод textFieldDidBeginEditing, однако клавиатура из одного из текстовых полей продолжает отображаться поверх моего сборщика. Я не могу понять, почему – userMod2

-1

Вы должны установить делегаты для текстовых полей. Вы должны использовать <UITextFieldDelegate> и self._textField1.delegate = self;

+0

Я перетащил с textField владельцам файлов в IB - я предполагаю, что это то же самое? Также мне нужно указать ? – userMod2

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