passText.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);
/**
* 顯示與隱藏密碼
*/
private void showOrHidePwd() {
int type = InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD;
if (passText.getInputType() == type) {
passText.setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);
passText.setSelection(passText.getText().length()); //把光標(biāo)設(shè)置到當(dāng)前文本末尾
pwdShow.setImageResource(R.drawable.invisible);
} else {
passText.setInputType(type);
passText.setSelection(passText.getText().length());
pwdShow.setImageResource(R.drawable.visible);
}
}
// 判斷是否為手機(jī)號(hào)
private boolean isPhone(String inputText) {
Pattern p = Pattern
.compile("((13[0-9])|(15[4,\D])|(18[0,5-9]))\d{8}$");//需新增號(hào)段181等
Matcher m = p.matcher(inputText);
return m.matches();
}
// 判斷格式是否為email
private boolean isEmail(String email) {
String str = "^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$";
Pattern p = Pattern.compile(str);
Matcher m = p.matcher(email);
return m.matches();
}
// 驗(yàn)證是否為昵稱
private boolean isHoneyname(String honeyname) {
if (honeyname == null || honeyname.length() == 0) {
return false;
}
int len = 0;
char[] honeychar = honeyname.toCharArray();
for (int i = 0; i < honeychar.length; i++) {
if (isChinese(honeychar[i])) {
len += 2;
} else {
len += 1;
}
}
if (len < 4 || len > 18) {
//"正確的昵稱應(yīng)該為\n1丸冕、4-18個(gè)字符\n2、2-6個(gè)漢字\n3环肘、不能是郵箱和手機(jī)號(hào)"
return false;
}
return true;
}
private boolean isChinese(char c) {
Character.UnicodeBlock ub = Character.UnicodeBlock.of(c);
if (ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS
|| ub == Character.UnicodeBlock.CJK_COMPATIBILITY_IDEOGRAPHS
|| ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A
|| ub == Character.UnicodeBlock.GENERAL_PUNCTUATION
|| ub == Character.UnicodeBlock.CJK_SYMBOLS_AND_PUNCTUATION
|| ub == Character.UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS) {
return true;
}
return false;
}