【问题标题】:Show only English characters when editing text in EditText in Android在 Android 的 EditText 中编辑文本时只显示英文字符
【发布时间】:2016-12-20 12:36:21
【问题描述】:

我在 android 设备的键盘上有 3 种语言,我想在开始编辑 EditText 中的文本(如用户名字段)时只显示英文字母和数字,我尝试在 xml 文件中使用此行作为 Edittext 但没有任何结果.

android:digits="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"

【问题讨论】:

标签: java android xml


【解决方案1】:

最好的方法是使用 inputfilter 并将其设置为您的 editText 您可以在此处查看解决方法:

How do I use InputFilter to limit characters in an EditText in Android?

我还找到了一个代码 sn-p,如下所示:

InputFilter filter = new InputFilter() {
public CharSequence filter(CharSequence source, int start, int end, 
    Spanned dest, int dstart, int dend)
{
    for (int i = start; i < end; i++) {
        if (!isEnglishOrHebrew(source.charAt(i))) { 
            return "";
        }
    }
    return null; 
}

private boolean isEnglishOrHebrew(char c) {
    . . .
}
}; 

edit.setFilters(new InputFilter[]{filter});

【讨论】:

    猜你喜欢
    • 2014-10-05
    • 1970-01-01
    • 2012-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-20
    • 1970-01-01
    • 2023-02-17
    相关资源
    最近更新 更多