Как уже упоминалось в других ответах, вы можете использовать это, чтобы перейти в нижний регистр:
nameTextview.setText.nameTextview.getText().toString().toLowerCase());
Однако, если вы ищете что-то вроде setAllCaps
, то есть измените текст на строчные безмодифицируя исходный текст, тогда вы должны использовать метод преобразования.
Действительно, setAllCaps(true)
, изменить строку на Uppercase:
'Hello, This Is a Test' => 'HELLO, THIS IS A TEST'
Но если вы установите setAllCaps (false) текстизмените вот так
'HELLO, THIS IS A TEST' => 'Hello, This Is a Test'
Исходный текст восстанавливается по мере ввода.
Чтобы выполнить это в нижнем регистре, вы должны создать класс, подобный этому:
public class AllLowTransformationMethod implements TransformationMethod {
private Locale mLocale;
public AllLowTransformationMethod(Context context) {
this.mLocale = context.getResources().getConfiguration().locale;
}
public CharSequence getTransformation(CharSequence source, View view) {
return source != null ? source.toString().toLowerCase(this.mLocale) : null;
}
public void onFocusChanged(View view, CharSequence sourceText, boolean focused, int direction, Rect previouslyFocusedRect) {
}
}
Затем вы можете использовать это:
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
nameTextview.setTransformation(new AllLowTransformationMethod);
}
});
Для восстановления исходного текста:
nameTextview.setTransformation(null);