Я создал поле ввода Password
и button
, когда вы нажимаете на кнопку, он показывает пароль в Text Format
.Как показать пароль до нажатия кнопки
Проблема в том, что она не скрывает ее снова, я хочу, чтобы пароль отображался до нажатия кнопки, когда пользователь не касался кнопки, он должен вернуться к исходному паролю dotted
.
Я написал следующий код, его изменение Dotted password
на текст, но не меняя text
на dotted-password
.
tvEmail.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
final int DRAWABLE_RIGHT = 2;
if(event.getAction() == MotionEvent.ACTION_DOWN) {
if(event.getRawX() >= (tvEmail.getRight() - tvEmail.getCompoundDrawables()[DRAWABLE_RIGHT].getBounds().width())) {
tvPassword.setInputType(InputType.TYPE_CLASS_TEXT);
return true;
}
}else{
tvPassword.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD);
}
if(event.getAction() == MotionEvent.ACTION_OUTSIDE) {
if(event.getRawX() >= (tvEmail.getRight() - tvEmail.getCompoundDrawables()[DRAWABLE_RIGHT].getBounds().width())) {
tvPassword.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD);
return true;
}
}
return false;
}
});
Я считаю, что 'ACTION_OUTSIDE' должно быть' ACTION_UP' – Shaishav
'ACTION_UP' также не является меняя что-либо. – Kirmani88