У меня та же проблема, когда было 2 текстовых поля в одном представлении.Моя цель состояла в том, чтобы показать клавиатуру по умолчанию для одного текстового поля, скрыть для второго и показать вместо этого выпадающий список.
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
метод просто не работал, как я ожидал, для 2 текстовых полей, единственный найденный мной обходной путь был
UIView* dummyView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 1, 1)];
myTextField.inputView = dummyView;
myTextField.inputAccessoryView = dummyView;
myTextField.tintColor = myTextField.backgroundColor; //to hide a blinking cursor
Это полностью скрывает клавиатуру для целевого textField (DropDownList в моем случае) и отображать значение по умолчанию, когда пользователь переключается на второе текстовое поле ( Номер счета на моем снимке экрана)
![enter image description here](https://i.stack.imgur.com/j1NvP.png)