在Flutter中,您可以使用TextFormField来实现输入框校验。TextFormField是Flutter中带有校验功能的输入框。它需要一个Form作为父组件,然后您可以在TextFormField中指定validator函数进行校验。
以下是一个简单的例子:
class MyForm extends StatefulWidget {
@override
_MyFormState createState() => _MyFormState();
class _MyFormState extends State<MyForm> {
final _formKey = GlobalKey<FormState>();
@override
Widget build(BuildContext context) {
return Form(
key: _formKey,
child: Column(
children: <Widget>[
TextFormField(
validator: (value) {
if (value.isEmpty) {
return '请输入内容';
return null;
RaisedButton(
onPressed: () {
if (_formKey.currentState.validate()) {
Scaffold.of(context)
.showSnackBar(SnackBar(content: Text('校验通过')));
child: Text('提交'),
如果用户输入内容不为空,则validator函数将返回null,表示校验通过。如果用户输入内容为空,则validator函数将返回一个错误消息,告诉用户必须输入内容。当您点击提交按钮时,会调用_formKey.currentState.validate()方法,如果所有的TextFormField都通过了校验,则显示一个SnackBar表示校验通过。