반응형
질문
저는 텍스트 필드의 값 끝에 ,00
을 추가하고 싶습니다.
iOS 기기에서는 잘 작동하지만 Android에서는 커서가 텍스트 필드의 값 시작 지점으로 이동합니다. 결과적으로 ,00
을 추가할 수 없습니다.
답변
저는 TextEditingController
을 설정하는 데 동일한 문제를 겪고 있었는데, 이게 제게 작동했습니다.
controller.text = someString;
controller.selection = TextSelection.fromPosition(TextPosition(offset: controller.text.length));
TextSelection.fromPosition()
은 다음을 수행합니다 (문서에서):
주어진 텍스트 위치에서 축소된 선택을 생성합니다. 축소된 선택은 시작과 끝이 동일한 오프셋에서 시작하며, 이는 텍스트에 0개의 문자를 포함하지만 텍스트에 삽입 지점으로 사용됩니다.
편집 - 다른 버전, 좀 더 짧고 여기서 제안한 것입니다:
controller.text = someString;
controller.selection =
TextSelection.collapsed(offset: controller.text.length);
반응형
댓글