EditText中禁止输入中文的方法

分类:知识百科 日期: 点击:0

可以使用InputFilter来实现。InputFilter是Android提供的一种过滤器,可以用来限制EditText输入的字符类型,比如只允许输入数字、字母或者汉字等。

定义InputFilter

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

设置InputFilter

EditText editText = findViewById(R.id.edit_text);
// 设置EditText的InputFilter,以限制输入中文
editText.setFilters(new InputFilter[]{filterChinese});

测试

  • 输入中文,应该不能输入成功
  • 输入英文或数字,应该可以输入成功
标签:

版权声明

1. 本站所有素材,仅限学习交流,仅展示部分内容,如需查看完整内容,请下载原文件。
2. 会员在本站下载的所有素材,只拥有使用权,著作权归原作者所有。
3. 所有素材,未经合法授权,请勿用于商业用途,会员不得以任何形式发布、传播、复制、转售该素材,否则一律封号处理。
4. 如果素材损害你的权益请联系客服QQ:77594475 处理。