当键盘显示然后消失时,Flutter重新启动TextField的状态

时间:2019-04-30 20:24:21

标签: dart flutter scoped-model

所以我正在使用scoped_model处理TextField。我将控制器移至Model类,并尝试使用用户在上述TextField上输入的文本更改Text的状态。但是当我关闭键盘时,状态发生变化,并且TextField现在为空,因此在Text小部件上也看不到任何东西。这是我的代码:

CupertinoTextField(
  controller: model.lastNameController,
  onChanged: (text) => model.changeShortLastNameState(lastName: text),
),

这是我模型上的相关代码

final lastNameController = TextEditingController();

void changeShortLastNameState({String lastName}) {
  var splitLastName = lastName.split(' ');
  var shortLastName = splitLastName[0];
  this.shortLastName = shortLastName;
  notifyListeners();
}

我在flutter github上找到了一个有同样问题的人,但是他们将他发送给了SO,而我在同一个人找到问题方面并未取得成功。有谁知道如何解决这个问题?谢谢。

1 个答案:

答案 0 :(得分:0)

在构建功能之外使用文本编辑控制器的减速。