如何在Flutter中的对话框中放置FocusNode和TextEditingController

时间:2019-09-14 20:31:00

标签: flutter

我有一个对话框,该对话框从两个“文本”字段中获取输入,并根据“按钮”的单击来执行某些任务。 为了处理这些文本字段的焦点和输入,我创建了 FocusNode TextEditingControllers

通常在StatefulWidget的 State 中,我们有dispose方法,可以在其中处置 ChangeNotifier ,但是我认为在对话框的情况下这是不可能直接实现的。

因此,我应该避免放置那些changeNotifiers还是应该在showDialog()中匿名构建小部件,而应该创建一个单独的StateFulWidget类?

1 个答案:

答案 0 :(得分:3)

  1. 创建一个单独的类并将其设置为StatefulWidget
  2. 在State类中,使用dispose()处置控制器。

注意:避免在匿名函数中包含复杂的代码。