【发布时间】:2017-05-19 08:51:30
【问题描述】:
我需要验证文本字段以仅输入文本。不允许使用数字或特殊字符。
【问题讨论】:
-
在 XML 中,添加:... android:digits="abcdefghijklmnopqrstuvwxyz "
标签: android android-layout android-studio
我需要验证文本字段以仅输入文本。不允许使用数字或特殊字符。
【问题讨论】:
标签: android android-layout android-studio
试试这个兄弟
android:digits=" ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
用大写和小写设置edittext属性
【讨论】:
您可以使用正则表达式来验证用户输入。使用以下函数:
public boolean AlphaCheck(String name) {
return name.matches("[a-zA-Z]+");
}
将字符串(用户输入)发送到此函数,如果输入有效,它将返回 true,然后您可以基于此继续。
这是另一种方法
public boolean AlphaCheck(String name) {
char[] chars = name.toCharArray();
for (char c : chars) {
if(!Character.isLetter(c)) {
return false;
}
}
return true;
}
【讨论】:
您可以为此创建过滤器
private String unwantedChars = "~#^|$%&*!1234567890";
private InputFilter filter = new InputFilter() {
@Override
public CharSequence filter(CharSequence source, int start, int end,
Spanned dest, int dstart, int dend) {
if (source != null && unwantedChars.contains(("" + source))) {
return "";
}
return null;
}
};
editText.setFilters(new InputFilter[] { filter });
【讨论】: