首先在控件初始化的時候予跌,設(shè)置EditText的屬性為不可見
//普通文本類型|密碼不可見
etPwd.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);
點(diǎn)擊按鈕響應(yīng)時,先判斷輸入框的InputType蒿叠,據(jù)此設(shè)置密碼是否可見
if (etPwd.getInputType() == (InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD)) {
etPwd.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);
} else {
etPwd.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);
}
但是上述方式會覆蓋掉digits屬性明垢,因此,最好使用以下的方式顯示和隱藏密碼:
//顯示密碼明文
etPwd.setTransformationMethod(PasswordTransformationMethod.getInstance());
//隱藏密碼
etPwd.setTransformationMethod(HideReturnsTransformationMethod.getInstance());