强制在 android 中的搜索视图中写入大写字母
force to write uppercase in searchview in android
我需要强制用户在 searchview v7 中用大写字母书写 你知道这样做的方法吗?与 editText 中使用的类似:
filter_text.setFilters(new InputFilter[]{new InputFilter.AllCaps()});
如果你想强制用户在你的 EditText
上输入大写字母,你只需要添加 android:inputType="textCapCharacters"
并且你的设备上的键盘将设置为大写。
在代码中,您可以通过添加以下内容来实现。
searchView.setInputType(InputType.TYPE_TEXT_FLAG_CAP_CHARACTERS);
您可以添加的所有其他内容都可以找到 here
编辑:
其实更好的办法是
searchView.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_CAP_SENTENCES);
或者,你也可以在searchable.xml
里面设置android:inputType
到textCapWords
,如果你按照官方SearchView
设置指南。
要只写第一个大写字母,您可以使用此代码:
search.setInputType(InputType.TYPE_TEXT_FLAG_CAP_SENTENCES);
API 28+级:
searchView.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_CAP_CHARACTERS)
Kotlin
inputType = InputType.TYPE_CLASS_TEXT or InputType.TYPE_TEXT_FLAG_CAP_CHARACTERS
我需要强制用户在 searchview v7 中用大写字母书写 你知道这样做的方法吗?与 editText 中使用的类似:
filter_text.setFilters(new InputFilter[]{new InputFilter.AllCaps()});
如果你想强制用户在你的 EditText
上输入大写字母,你只需要添加 android:inputType="textCapCharacters"
并且你的设备上的键盘将设置为大写。
在代码中,您可以通过添加以下内容来实现。
searchView.setInputType(InputType.TYPE_TEXT_FLAG_CAP_CHARACTERS);
您可以添加的所有其他内容都可以找到 here
编辑:
其实更好的办法是
searchView.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_CAP_SENTENCES);
或者,你也可以在searchable.xml
里面设置android:inputType
到textCapWords
,如果你按照官方SearchView
设置指南。
要只写第一个大写字母,您可以使用此代码:
search.setInputType(InputType.TYPE_TEXT_FLAG_CAP_SENTENCES);
API 28+级:
searchView.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_CAP_CHARACTERS)
Kotlin
inputType = InputType.TYPE_CLASS_TEXT or InputType.TYPE_TEXT_FLAG_CAP_CHARACTERS