how to set cursor position at the end of the value in flutter in textfield?
I've been having the same problem with setting a TextEditingController
and this is what worked for me.
controller.text = someString;
controller.selection = TextSelection.fromPosition(TextPosition(offset: controller.text.length));
TextSelection.fromPosition()
does the following (from the documentation):
Creates a collapsed selection at the given text position. A collapsed selection starts and ends at the same offset, which means it contains zero characters but instead serves as an insertion point in the text.
Edit - another version, which is a bit shorter and suggested by others here:
controller.text = someString;
controller.selection =
TextSelection.collapsed(offset: controller.text.length);
This worked for me:
_inputCtrl.value = TextEditingValue(
text: suggestion,
selection: TextSelection.collapsed(offset: suggestion.length),
);
https://github.com/flutter/flutter/issues/11416#issuecomment-507040665