【发布时间】:2021-01-05 00:33:17
【问题描述】:
当我们通过TextEditingController在Flutter中设置TextField如下:
textEditingController = TextEditingController();
textEditingController.text = "Some value.";
我们知道这里的text 设置器会将TextSelection 设置为输入的开头,如以下代码所示:
set text(String newText) {
value = value.copyWith(
text: newText,
selection: const TextSelection.collapsed(offset: -1),
composing: TextRange.empty,
);
}
我的问题是我不想设置选择,因为在设置 TextField 之后我将焦点转移到另一个字段。
那么,有没有办法在不设置选择的情况下设置TextField 值,或者在设置值后删除设置的选择?
谢谢。
【问题讨论】:
-
textEditingController.value = ... -
我试过 textEditingController.text = "Some value.";但它没有在文本字段上显示光标
-
是的,没有任何选择的 TextEditingValue 默认仍会将选择设置为输入的开头。
-
难道不应该有一种简单的方法来以编程方式为 TextField 设置值,而无需选择/聚焦它吗?
标签: android flutter user-interface textfield