Flutter TextField 光标奇怪的行为

Flutter TextField cursor strange behaviour

我的 TextField 有以下问题:

光标最初漂浮在使用 TextEditingController 设置的文本上方 TextField 的中间 - 当我尝试输入内容时没有任何反应。您必须先单击 TextField 并将光标定位在末尾,然后才能输入内容。当不使用 TextEditingController 时,这个问题不会以某种方式发生。

TextField(
  autofocus: true,
  textAlign: TextAlign.center,
  controller: tec,
  decoration: const InputDecoration(
    border: OutlineInputBorder(),
  ),
  keyboardType: TextInputType.number,
  onChanged: (value) {
    ...
  },
),

但是我需要 TextEditingController 来初始设置 TextField 的文本。 这特别烦人,因为您经常不明白为什么不能输入某些内容,也没有意识到必须放置光标,因为光标已经在 TextField.

是否有任何解决办法,或者例如手动将光标放在文本末尾的方法?

[✓] Flutter (Channel stable, 3.0.1, on Arch Linux 5.17.7-arch1-1, locale
    de_DE.UTF-8)
[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
[✓] Chrome - develop for the web
[✓] Linux toolchain - develop for Linux desktop
[✓] Android Studio (version 2021.2)
[✓] Connected device (3 available)
[✓] HTTP Host Availability

• No issues found!

使用此代码段将光标置于末尾:

controller.text = initialValue; //set your initial data
controller.selection = TextSelection.fromPosition(TextPosition(offset: controller.text.length));