方案一,亲测无效!
// editText.setInputType(InputType.TYPE_CLASS_NUMBER);
etCode.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_NORMAL);
editText.setKeyListener(DigitsKeyListener.getInstance("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"));
测试发现是显示数字键盘, 亲测不行。
方案二,亲测有效!
etCode.setKeyListener(new DigitsKeyListener() {
@Override
public int getInputType() {
return InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_NORMAL;
}
@NonNull
@Override
protected char[] getAcceptedChars() {
return "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ".toCharArray();
}
});