пользовательская цифровая клавиатура - PullRequest
0 голосов
/ 11 января 2010

Я хочу создать собственную цифровую панель, которая появится после того, как пользователь сфокусирует текстовое поле, поэтому у меня есть два вопроса по этому поводу? 1. Я использую «Интерфейсный конструктор», чтобы добавить текстовое поле в моем представлении, и выбираю «Цифровую панель» в качестве клавиатуры по умолчанию для ввода пользователем номера, поэтому, когда я щелкаю текстовое поле, цифровая панель появляется автоматически, как я могу остановить ее появление цифровая клавиатура? потому что я хочу показать свою цифровую клавиатуру.

2.Если я настраиваю вид с цифровой кнопкой внутри, как я могу обнаружить событие, когда нажимаю на текстовое поле? и после того, как я обнаружу событие, я добавлю подпредставление, чтобы показать мою собственную цифровую клавиатуру или нет?

спасибо

Ответы [ 2 ]

3 голосов
/ 11 января 2010

Если вы создаете пользовательскую цифровую клавиатуру (я предполагаю, что это означает представление с сеткой кнопок), не беспокойтесь об использовании UITextField; Нет простого способа скрыть нативную клавиатуру, и, несмотря на все это, нет ничего полезного, что дает вам текстовое поле.

Я рекомендую создать пользовательский подкласс UIControl. Вы можете обнаружить касание в представлении и показать свою пользовательскую клавиатуру таким образом. Документация объясняет это довольно хорошо.

0 голосов
/ 11 января 2010

У меня есть частичный ответ, но не идеальный, и я сам не пробовал. Посмотрите документацию по протоколу UITextFieldDelegate.

Вы можете задать свой контроллер textField.delegate = self, а затем реализовать textFieldShouldBeginEditing, чтобы как-то показать вашу специализированную клавиатуру, а затем вернуть NO, чтобы он не переходил в режим редактирования. Когда вы говорите своей специальной клавиатуре показывать себя, передайте ей ссылку на текстовое поле, чтобы она знала, куда вставлять символы. Проблема в том, что это, вероятно, не будет показывать курсор и не позволит пользователю перемещать курсор для вставки символов и т. Д.

Так что на самом деле это немного уродливо, но этого может быть достаточно. AFAIK нет хорошего способа сделать это: (

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...