如何在用户离开EditBox之前对密码进行非模糊处理,然后再对其进行模糊处理?我希望用户能够看到密码,因为他们正在输入它,但一旦他们完成并已移动到其他字段混淆它。
发布于 2012-07-07 03:16:38
您可以使用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没有焦点的情况下。
发布于 2012-07-07 03:01:02
我不认为安卓有这样的内置功能,但你可以通过继承TextView并改变onFocusChanged方法中的字符来很容易地做到这一点。将密码字符存储在您的变量中,并在窗口失去焦点时将它们替换为点。当它获得焦点时,去掉圆点并把字符放回去。
https://stackoverflow.com/questions/11368064
复制相似问题