2013-02-11 2 views
1

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

EDIT: Клавиатура в моем случае будет только на самом деле быть клавиатурой с 10 цифрами и забой ключ

Что такое лучший способ пойти по этому поводу? Я работал с UITextField, который работает с пользовательским видом клавиатуры, а затем делаю это первым ответчиком, когда загружается представление, но, возможно, есть более эффективные способы.

Заранее благодарен!

+0

Что такое пользовательская клавиатура? Вам действительно нужно это сделать? Каждое приложение, которое я использовал с пользовательской клавиатурой, действительно ужасно. Одна только клавиатура меня отпустила, и я удалил приложение. – Fogmeister

+0

Ну, это на самом деле просто KeyPad. Мне нужны только цифры. Также проверьте приложение Scorekeeper XL. Я думаю, что его клавиатура прекрасна. – sbjluke

+0

Я посмотрю на это приложение, но если вам просто нужна клавиатура numpad и backspace, вы можете настроить стиль клавиатуры для этого. – Fogmeister

ответ

1

Чтобы сделать UITextField всегда использовать клавиатуру ...

В функции viewDidAppear или viewWllAppear это сделать ...

[self.textField becomeFirstResponder]; 

Это сделает клавиатура появится и TextField реагировать на вход ,

Чтобы закрыть клавиатуру, вы должны бежать ...

[self.textField resignFirstResponder]; 

До тех пор, пока вы не запустите это будет держать фокус клавиатуры.

+0

Нет необходимости реализовывать метод textFieldShouldReturn.Это не связано с уходом клавиатуры или нет. – rmaddy

+0

А, хороший момент. В любом случае, я склонен переоценивать его по другим причинам, но я думал об этом. – Fogmeister

0

В режиме контроллера viewWillAppear: контроллера вы можете позвонить becomeFirstResponder в текстовое поле. Это приведет к тому, что клавиатура появится автоматически, когда появится контроллер вида. Пока нет другого способа убрать клавиатуру, это все, что вам нужно.

Конечно, на iPad есть кнопка на клавиатуре, чтобы отклонить ее. Если вы хотите остановить эту кнопку от работы, выполните следующий метод делегирования:

- (BOOL)textFieldShouldEndEditing:(UITextField *)textField { 
    return NO; 
} 
0

И в случае, если вы действительно хотите иметь свою собственную клавиатуру. создать представление, соответствующее размеру и украшенному;) .. и поместить в свойство textFiled inputView.

textField.inputView = ваш взгляд пользовательских клавиатуры

Приветствия.

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