gpt4 book ai didi

flutter - 焦点更改时的 TextFormField 验证

转载 作者:行者123 更新时间:2023-12-03 18:17:21 26 4
gpt4 key购买 nike

我正在使用一个表单和一些 TextFormFields。
我可以验证用户输入如下:

final _form = GlobalKey<FormState>();

void saveForm(){

_form.currentState.validate()

}

//saveForm runs when a save button is pressed.

我想知道是否可以在 TextField 失去焦点时为它运行验证函数。(我不想通过单击按钮来验证输入,相反,我想在用户更改 TextField 时运行验证函数.)

最佳答案

我想你只是想添加 autovalidate: true,在您的表单中,所以当您的焦点是更改验证时调用

 Form(
key: _formKey,
autovalidate: true,
child:/*...*/
)

创建您的表单,例如
  var _formKey = GlobalKey<FormState>();
bool _autoValidate = false;

@override
Widget build(BuildContext context) {
return Form(
key: _formKey,
autovalidate: _autoValidate,
child: /* ... */
),
),
);
}

当你点击保存
void _onSignUpClicked(BuildContext context) {
if (_formKey.currentState.validate()) {
Scaffold.of(context).showSnackBar(SnackBar(content: Text("Successfully sign up")));
} else {
setState(() {
_autoValidate = true;
});
}
}

关于flutter - 焦点更改时的 TextFormField 验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58522998/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com