Android EditTextView 设置输入英文字母全部大写

1. EditTextView 继承自TextView 

2. TextView 下面有一个方法 : setTransformationMethod,这个方法接受参数类型为:

TransformationMethod,是一个接口,如下图:

我们可以看到TransformationMethod这个类并没有我们需要的方法,看一下他的实现类,
有下面这五个,看名字,第一感觉就是点ReplacementTransformationMethod


看这个类,我们找到我们需要的两个方法,只要传给这个类需要被转换和转换的字符数组就可以了。

接下来写我们的代码,代码如下,即可实现我们输入的英文字母全部大写了:

mEdittext.setTransformationMethod(new ReplacementTransformationMethod() {
            @Override
            protected char[] getOriginal() {
                char[] originalCharArr = { 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z' };
                return originalCharArr;
            }

            @Override
            protected char[] getReplacement() {
                char[] replacementCharArr = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z' };
                return replacementCharArr;
            }
        });
    }



你可能感兴趣的:(Android)