我偶尔需要禁用 TextFormField。我在小部件或 Controller 中找不到标志来简单地将其设为只读或禁用。 最好的方法是什么?
最佳答案
还有另一种方法可以实现,它也不会导致 this issue .希望这可能对某人有所帮助。
创建 AlwaysDisabledFocusNode
并将其传递给 TextField
的 focusNode
属性。
class AlwaysDisabledFocusNode extends FocusNode {
@override
bool get hasFocus => false;
}
然后
new TextField(
enableInteractiveSelection: false, // will disable paste operation
focusNode: new AlwaysDisabledFocusNode(),
...
...
)
更新:
TextField
现在具有 enabled
属性。您可以在其中禁用 TextField
之类的
new TextField(
enabled: false,
...
...
)
注意:这也会禁用与文本输入相关的图标。
https://stackoverflow.com/questions/44490622/