2017-04-24 2 views
1

Ich versuche, den Cursor am Ende meines editText-Felds zu halten, damit Benutzer nicht mit der Eingabe von Informationen in der Mitte beginnen können. Ich habe versucht, einen onClickListener und einen onTouchListener zu verwenden, um die Auswahl auf die Länge des editText festzulegen. Selbst wenn Sie beide ausprobieren, kann der Benutzer den Cursor immer noch in die Mitte des Textes bewegen. Gibt es einen Weg dies zu verhindern?Cursor in editText unbeweglich machen

Antwort

0

Sie können myEditText.setSelection(text.length()) verwenden, um den Cursor am Ende der EditText in Verbindung mit der onSelectionChanged()-Methode zu setzen.

von Genommen: https://stackoverflow.com/a/12982251/1269953

@Override 
public void onSelectionChanged(int start, int end) { 

    CharSequence text = getText(); 
    if (text != null) { 
     if (start != text.length() || end != text.length()) { 
      setSelection(text.length(), text.length()); 
      return; 
     } 
    } 

    super.onSelectionChanged(start, end); 
} 

Dadurch wird der Cursor auf das Ende des Textes zurück.

+0

Ich bin ein wenig verwirrt, um diesen Code in mein Programm zu implementieren –

+0

Wenn Sie den Link betrachten, werden Sie sehen, dass Sie 'onSelectionChanged' überschreiben können, was eine Methode ist, die in' EditText' verfügbar ist um eine Klasse zu erstellen, die EditText erweitert und diese Methode überschreibt – Pztar

Verwandte Themen