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