在用户离开EditBox之后如何才能对密码进行非模糊处理,然后再对其进行模糊处理?我希望用户能够在输入密码时看到密码,但一旦完成就会对其进行模糊处理并转移到其他字段。
答案 0 :(得分:2)
我不认为android有内置功能,但你可以通过继承TextView并更改onFocusChanged方法中的字符来轻松完成。将密码字符存储在变量中,并在窗口失去焦点时用点替换它们。当它获得焦点时,摆脱点并将焦点放回去。
答案 1 :(得分:2)
您可以使用PasswordTransformationManager
课程和OnFocusChangedListener
来完成此操作。试试这个:
myEditText.setOnFocusChangeListener(new View.OnFocusChangeListener()
{
@Override
public void onFocusChange(View view, boolean focused)
{
if(focused)
((EditText)view).setTransformationMethod(null);
else
((EditText)view).setTransformationMethod(PasswordTransformationMethod.getInstance());
}
});
这与设置xml属性android:password="true"
基本相同,但仅限于EditText没有焦点时。