Ich habe ein Password
Eingabefeld und eine button
erstellt, wenn Sie auf die Schaltfläche klicken, wird das Passwort in Text Format
angezeigt.So zeigen Sie das Passwort an, bis die Taste gedrückt wird
Das Problem ist, dass es es nicht wieder versteckt, ich möchte das Passwort angezeigt werden, bis die Taste gedrückt wird, wenn Benutzer die Schaltfläche berühren, sollte es wieder auf das ursprüngliche Passwort dotted
Modus gehen.
Ich habe den folgenden Code geschrieben, Es ändert Dotted password
zu Text, aber nicht text
zu dotted-password
ändern.
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;
}
});
möchte ich glaube, Sie 'ACTION_OUTSIDE' sein sollte' ACTION_UP' – Shaishav
'ACTION_UP' ist auch nicht etwas ändern. – Kirmani88