Ich habe wenige EditText-Objekte mit Text darin. Ich möchte, dass ein EditText zum ersten Mal den Fokus erhält, um den Text darin zu löschen, aber nur beim ersten Mal.
Wie kann ich es tun?
Hier ist ein Beispiel: Ich habe einen EditText namens SomeThing mit dem Text "someText" drin. Wenn der Benutzer SomeThing zum ersten Mal berührt, möchte ich den "someText" löschen. Nehmen wir an, der Text wurde gelöscht und der Benutzer gab nun seinen eigenen Text ein, diesmal "someOtherText", und der EditText verlor den Fokus für einen anderen EditText. Dieses Mal, wenn der Benutzer SomeThing antippt, wird "someOtherText" nicht gelöscht, weil es das zweite Mal ist, das es sich konzentriert.
Wenn Sie nach einer Möglichkeit suchen, Platzhalter für EditText
hinzuzufügen, fügen Sie einfach android:hint = 'some text'
zur entsprechenden XML-Datei hinzu oder rufen Sie die Methode setHint('some text')
für EditText
auf.
Andernfalls können Sie OnFocusChangeListener()
verwenden, um auf das Get-Focused-Ereignis zu reagieren. Um zu überprüfen, ob das EditText
zum ersten Mal fokussiert wird, verwenden Sie eine andere Boolean
-Variable (z. B. isFirstTimeGetFocused
) und initialisieren Sie sie in true
in onCreate()
method. Nachdem% ce_de% fokussiert wurde, setzen Sie EditText
auf isFirstTimeGetFocused
;
Tags und Links java android android-edittext