Как программно настроить клавиатуру iphone для отображения желаемого набора клавиш - PullRequest
3 голосов
/ 16 мая 2011

Я программирую приложение для iPhone, в котором нужно текстовое поле, в котором пользователь может добавлять цифры с клавиатуры и добавлять их на лету, т. Е. Пользователь может ввести «1,5 + 2,4 + 6,3 + .063» и в качестве Пользователь вводит дополнительные цифры и знаки плюс, сумма отображается сразу.

Проблема заключается в запуске и удержании клавиатуры в режиме 123 после того, как пользователь введет знак + (используя клавиатуру электронной почты, поскольку у нее есть цифры и знак плюс в том же виде).

Как мне запустить клавиатуру электронной почты на экране _123 и сохранить ее там?

Спасибо! Mike

Ответы [ 3 ]

9 голосов
/ 16 мая 2011

используйте код ниже для установки типа клавиатуры

myTextField.keyboardType = UIKeyboardTypeNumberPad;

Все типы клавиатуры определены в UITextInputTraits протоколе, который реализуется UITextField

2 голосов
/ 16 мая 2011

В зависимости от того, какое текстовое поле вы хотите установить для него, перейдите:

[textField setKeyboardType:(UIKeyboardType)];

Где UIKeyboardType может быть любым из следующих: UIKeyboardTypes

*** EDIT

В вашем случае вы бы сделали:

[textField setKeyboardType:UIKeyboardTypeNumbersAndPunctuation];

*** EDIT

0 голосов
/ 13 июля 2018

Нет, я не смог найти способ программно изменить режимы клавиатуры на 123 или #+=.

Но если вы хотите, чтобы клавиатура по умолчанию запускалась так, как если бы пользователь нажал кнопку 123 наклавиатура, ваш единственный выбор:

textField.keyboardType = UIKeyboardType.numbersAndPunctuation

Вот как будет представлена ​​numbersAndPunctuation клавиатура

enter image description here

Другое, связанное /полезные типы клавиатуры:

textField.keyboardType =.numberPad

enter image description here

textField.keyboardType =.decimalPad

enter image description here

textField.keyboardType =.phonePad

enter image description here

...