Есть ли способ установить autocapitalizationType для UITextField
, чтобы по умолчанию первая буква каждого слова была капитализирована?
Это пример того, что я хочу
Есть ли способ установить autocapitalizationType для UITextField
, чтобы по умолчанию первая буква каждого слова была капитализирована?
Это пример того, что я хочу
Использование
textField.autocapitalizationType = UITextAutocapitalizationTypeWords;
Для получения дополнительной информации, пожалуйста, прочитайте: Ссылка на протокол UITextInputTraits
Мы хотим установить текстовое поле autocapitalizationType
.
self.textfield.autocapitalizationType = UITextAutocapitalizationTypeWords
self.textfield.autocapitalizationType = .words
Здесь есть несколько вариантов:
allCharacters
- это то же самое, что двойное нажатие клавиши shift, в основном, caplock.none
довольно понятен, клавиатура никогда не будет пытаться заглавные буквы.sentences
будет пытаться загладить следующее слово после пунктуации метки конца.words
будет пытаться использовать каждое новое слово (после пробела), что похоже на то, что вы ищете.Это свойство также можно установить из Инспектора атрибутов построителя интерфейса, если у вас выбрано соответствующее текстовое поле:
"Капитализация" - это первый вариант в этой группе, просто прошел выбор минимального размера шрифта для текстового поля.
Установка свойства capitalization
в "Слова" предполагает, что пользователь вводит заглавные слова. Это может быть отменено пользователем, не переключаясь на клавиатуре. Лучше всего сделать это, используя слова в коде:
NSString *text = [myTextField.text capitalizedString];
Да. В InterfaceBuilder, в инспекторе атрибутов textField, вы можете настроить свойство "Капитализация" на "Слова".
Существует ответ для Obj-C, im здесь для Swift;
textField.autocapitalizationType = UITextAutocapitalizationType.Words
или более короткий путь
textField.autocapitalizationType = .Words
Вы даже можете сделать это с помощью раскадровки или файла .xib. Просто нужно выбрать текстовое поле и в инспекторе атрибутов справа есть раздел "Капитализация", в котором вы можете выбрать все, что вам подходит. В вашем случае это капитализация "Слова".
В Xamarin.ios/Monotouch это сработало для меня:
textField.AutocapitalizationType = UITextAutocapitalizationType.Words;