Intereting Posts
Как установить ProgressBar на центральном экране в рамке? Настройка цвета заголовка приложения в обзоре (последние приложения) Хэш-код Facebook не соответствует какому-либо сохраненному ключу База данных Android SQLite: медленная вставка «Ошибка анализа: проблема с парсией пакета» при установке приложения Android Android – нижний колонтитул прокручивается с экрана при использовании в CoordinatorLayout Как использовать InputFilter для ограничения символов в EditText в Android? Retrolambda: Lint сбой при использовании лямбда-выражений с retrolambda Genymotion, «Не удалось загрузить движок VirtualBox» на Mavericks. VBox настроен правильно IOException: сбой чтения, сокет может быть закрыт – Bluetooth на Android 4.3 Получить все строки из SQLite Как удалить текст заголовка из Android ActionBar? Перезагрузка приемника не работает на телефонах xiaomi Сообщение EditText setError не очищается после ввода Android: Как я могу помешать мягкой клавиатуре выдвинуть мой взгляд?

Как принудительно использовать EditText для запуска текста в заглавной букве?

У меня есть EditText и мне нужно, чтобы текст в нем (когда пользователь вводил) начинался с заглавной буквы.

Solutions Collecting From Web of "Как принудительно использовать EditText для запуска текста в заглавной букве?"

Будьте осторожны, если вы добавите android:capitalize="sentences" и android:inputType="text" , поскольку последний, похоже, имеет приоритет над первым, и ввод не будет заглавным.

Существует специальный inputType для автоматической заглавной буквы первой буквы:

android:inputType="textCapSentences"

См. http://developer.android.com/reference/android/widget/TextView.html#attr_android:inputType

Параметры android: capize

 android:capitalize="none", which won't automatically capitalize anything. android:capitalize="sentences", Which will capitalize the first word of each sentence. android:capitalize="words", Which Will Capitalize The First Letter Of Every Word. android:capitalize="characters", WHICH WILL CAPITALIZE EVERY CHARACTER. 

Добавьте это в свой XML

  android:inputType="textCapWords" 

android:inputType="textCapSentences" будет работать для предложений. Однако мне нужно было загладить каждое слово в поле полного имени.

использование

 android:inputType="textPersonName|textCapWords" 

"textPersonName" использование только "textPersonName" недостаточно, поэтому первые буквы имени будут заглавные.

Аналогично почтовым адресам:

 android:inputType="textPostalAddress|textCapSentences" 

Попробуйте этот путь,

 testEditText.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_CAP_WORDS); 

Или android:inputType="textCapSentences" будет работать только в том случае, если включена автоматическая настройка клавиатуры устройства.

В макете xml добавьте android:inputType=textCapSentences

В макете xml добавьте android:capitalize="sentences"

Вставьте это в свой edittext (xml):

  android:capitalize="sentences" 

Вы использовали слово «Enforce». Поэтому попробуйте это. Просто передайте ваш edittext в качестве аргумента.

 public static void setCapitalizeTextWatcher(final EditText editText) { final TextWatcher textWatcher = new TextWatcher() { int mStart = 0; @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { } @Override public void onTextChanged(CharSequence s, int start, int before, int count) { mStart = start + count; } @Override public void afterTextChanged(Editable s) { String input = s.toString(); String capitalizedText; if (input.length() < 1) capitalizedText = input; else capitalizedText = input.substring(0, 1).toUpperCase() + input.substring(1); if (!capitalizedText.equals(editText.getText().toString())) { editText.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { } @Override public void onTextChanged(CharSequence s, int start, int before, int count) { } @Override public void afterTextChanged(Editable s) { editText.setSelection(mStart); editText.removeTextChangedListener(this); } }); editText.setText(capitalizedText); } } }; editText.addTextChangedListener(textWatcher); } 
 edittext.setFilters(new InputFilter[] {new InputFilter.AllCaps()});