Можно ли программно изменить тип клавиатуры uitextfield, чтобы было возможно что-то подобное:
if(user is prompted for numeric input only)
[textField setKeyboardType: @"Number Pad"];
if(user is prompted for alphanumeric input)
[textField setKeyboardType: @"Default"];
iphone
ios
uitextfield
uikeyboard
eric.mitchell
источник
источник
doozy
на более понятный. Имейте в виду, что SO - это международный сайт, а не североамериканскийОтветы:
Есть
keyboardType
свойство дляUITextField
:Ваш код должен читать
источник
UITextInputTraits
протокола, которыйUITextField
принимает.Стоит отметить, что если вы хотите, чтобы текущее поле в настоящий момент обновляло тип клавиатуры, есть еще один шаг:
Без вызова
reloadInputViews
клавиатура не изменится, пока выбранное поле ( первый респондент ) не потеряет и не восстановит фокус.Полный список
UIKeyboardType
значений можно найти здесь , или:источник
[textField reloadInputViews];
то, что я пропал без вести. Спасибо!reloadInputViews
также работает дляUITextInput
реализации на заказ .Да, вы можете, например:
источник
Это для быстрого. Также для того, чтобы это функционировало должным образом, оно должно быть установлено после
textFieldView.delegate = self
источник
чтобы текстовое поле принимало буквенно-цифровую форму, установите только это свойство
источник
источник
Swift 4
Если вы пытаетесь изменить тип клавиатуры при выполнении условия, выполните следующие действия. Например: если мы хотим изменить тип клавиатуры со значения по умолчанию на цифровую клавиатуру, когда счетчик текстового поля равен 4 или 5, то сделайте следующее:
источник
Есть свойство для этого называется
keyboardType
. Что вы хотите сделать, это заменить там, где у вас есть строки@"Number Pad
и@"Default
сUIKeyboardTypeNumberPad
иUIKeyboardTypeDefault
.Ваш новый код должен выглядеть примерно так:
Удачи!
источник
для людей, которые хотят использовать в
UIDatePicker
качестве входных данных:источник
Это
UIKeyboardTypes
для Swift 3:Это пример использования типа клавиатуры из списка:
источник
Программно изменить тип клавиатуры UITextField swift 3.0
источник
Вот тип клавиатуры в Swift 4.2
источник