okay,我们又见面了。嘿嘿,其实只是一个简单的我们习以为常的密码框,只是,我们忽略的是虽然密码了,但是要做成*状的嘿嘿,可是在这个方法里面哦!
好啦,希望对你们有帮组哦!
如果只是要密码框的话,我们可以setpassword就okay,而且,如果要想editext有输入限制,我们可以设置inputtype。这里我们一般是将其设置为number的形式。
然后
package com.android.user.regiester; import android.text.method.ReplacementTransformationMethod; /** * * * 将字符密码化 * * @author Catherine.Brain * */ public class WordsReplace extends ReplacementTransformationMethod { String strWord = null; @Override protected char[] getOriginal() { // 循环ASCII值 字符串形式累加到String for (char i = 0; i < 256; i++) { strWord += String.valueOf(i); } // strWord转换为字符形式的数组 char[] charOriginal = strWord.toCharArray(); return charOriginal; } @Override protected char[] getReplacement() { char[] charReplacement = new char[255]; // 输入的字符在ASCII范围内,将其转换为* for (int i = 0; i < 255; i++) { charReplacement[i] = '*';
(当然,这里就是设置的关键,可以设置任何你想要的字符。) } return charReplacement; } }
最后,将自己实列化的那个编辑文本框
set
pw_Edit.setTransformationMethod(new WordsReplace());
就行了了。但是这里好像有一点不是很完美。不知道能有人解决不。就是在输入错误,我想再次将其清空,然后再次输入,但是,貌似这样总会报一个错误,说超出数组界限,就是在转字符的时候,,找过,但是没有解决。希望能引玉了!