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;
}
});
}