Я тоже не имею в виду textInput. Я имею в виду, что если у вас есть статический текст в TextView (заполненный из вызова базы данных для данных, введенных пользователем (которые могут быть не с заглавной буквы)), как я могу убедиться, что они написаны с заглавной буквы?
Благодарность!
Ответы:
Я должен быть в состоянии сделать это с помощью стандартных манипуляций со строкой Java, ничего особенного для Android или TextView.
Что-то типа:
Хотя, наверное, есть миллион способов добиться этого. См. Документацию String .
ИЗМЕНИТЬ Я добавил
.toLowerCase()
источник
Следующее не относится к TextView, но работает с EditText; даже в этом случае он применяется к тексту, введенному с клавиатуры, а не к тексту, загруженному с помощью setText (). Чтобы быть более конкретным, он включает заглавные буквы на клавиатуре, и пользователь может отменить это по своему желанию.
или
Это закроет первую букву.
или
источник
источник
для Котлина, просто позвоните
источник
Вы можете добавить Apache Commons Lang в Gradle, например
compile 'org.apache.commons:commons-lang3:3.4'
И использовать
WordUtils.capitalizeFully(name)
источник
Для посетителей в будущем, вы можете также (лучше ИМХО) импорт
WordUtil
изApache
и добавить много полезных методы вашего приложения, как ,capitalize
как показано здесь:Как написать первый символ каждого слова в строке с заглавной буквы
источник
У меня ничего не работает:
Функция:
private String getCapsSentences(String tagName) { String[] splits = tagName.toLowerCase().split(" "); StringBuilder sb = new StringBuilder(); for (int i = 0; i < splits.length; i++) { String eachWord = splits[i]; if (i > 0 && eachWord.length() > 0) { sb.append(" "); } String cap = eachWord.substring(0, 1).toUpperCase() + eachWord.substring(1); sb.append(cap); } return sb.toString(); }
Результат:
I / P
brain
O / P мозгI / P
Brain and Health
O / PBrain And Health
I / P
brain And health
в O / PBrain And Health
I / P
brain's Health
в O / PBrain's Health
I / P
brain's Health and leg
в O / PBrain's Health And Leg
Надеюсь, это поможет вам.
источник
Принятый ответ хорош, но если вы используете его для получения значений из textView в android, было бы хорошо проверить, пуста ли строка. Если строка пуста, это вызовет исключение.
источник
Для Kotlin, если вы хотите быть уверены, что используется формат «Aaaaaaaaa», вы можете использовать:
источник
Создайте собственный TextView и используйте его:
источник
Здесь я написал подробную статью по этой теме, так как у нас есть несколько вариантов: Заглавная первая буква строки в Android
Метод использования заглавной буквы в строке в Java
Метод написания заглавной буквы в первой строке в Котлине
Использование атрибута XML
Или вы можете установить этот атрибут в TextView или EditText в XML
источник