Angenommen, ein Benutzer hat einen Text in eine EditText geschrieben und danach irgendwo anders auf dem Bildschirm berührt, wodurch sich die Cursorposition änderte: Wie kann man die neue Cursorposition bestimmen?EditText Cursorposition
10
A
Antwort
24
Die einfache Version:
myEditText.getSelectionStart();
Wenn Sie auf ein Ereignis reagieren wollen, können Sie
myEditText.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View view, MotionEvent event) {
// view is myEditText here
}
});
event
versuchen können zwischen drückt und unterscheiden.
EditText
hat auch eine setOnClickListener()
, die einen Blick wert sein könnte.
EDIT: Ich habe vergessen, onSelectionChanged(int selStart, int selEnd)
zu erwähnen, wo selEnd selStart gleich ist, wenn die Position geändert.
2
beste und sichere Art und Weise verwendet TextWatcher
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
int cursorIndex = start + 1;
}
Verwandte Themen
- 1. Suchen Cursorposition
- 2. Android SearchView Cursorposition nach Hinweispfeil ändern
- 3. Android Edittext Spannable Problem
- 4. Cursorposition in VIM-Abkürzung
- 5. contentEditable Texteditor und Cursorposition
- 6. Windows Forms RichTextBox Cursorposition
- 7. Cursorposition in UITextField steuern
- 8. LWJGL 3 Cursorposition
- 9. Text ist mit ImageSpan in EditText
- 10. Cursorposition wiederherstellen nach contenteditable Ändern
- 11. Aktuelle Cursorposition in Selen zeigen
- 12. Cursorposition im HTML-Mailto-Link
- 13. Warum Einfügemodus verlassen bewegt Cursorposition
- 14. EditText mit SpannableStringBuilder und ImageSpan funktioniert nicht einwandfrei
- 15. Warum werfen Sie (EditText) findViewById auf (EditText)?
- 16. EditText - Abstand zwischen Text und EditText-Zeile
- 17. EditText requestFocus()?
- 18. Android EditText
- 19. EditText Sichtbarkeit
- 20. EditText überprüfen
- 21. Edittext Hintergrundbild
- 22. Cursorposition in einem Text-Widget festlegen
- 23. Get aktuelle Cursorposition in einer Textbox
- 24. Abrufen der Cursorposition von UITextField in ios
- 25. Bild an Cursorposition im Rich Textfeld einfügen
- 26. Wie bekomme ich die Cursorposition in bash?
- 27. Zeichenfolge an Cursorposition von UITextField einfügen
- 28. Setzen der Cursorposition mit Visual Studio Extension
- 29. ckeditor - Vorheriges Zeichen der aktuellen Cursorposition abrufen
- 30. jquery Setzen der Cursorposition in contenteditable div
Zur Klarstellung: OnSelectionChanged() muss in EditText Subklassen außer Kraft gesetzt werden, nützlich zu sein. OnTouch-Ereignisse treten nur auf, wenn der Benutzer den Bildschirm buchstäblich berührt. OnClick-Ereignisse können ausgelöst werden, wenn der Benutzer den Bildschirm berührt, oder über bestimmte physische Eingaben, z. D-Pad-Mitte, Trackball-Klick usw. – greg7gkb