首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Flutter multiple TextFormFields in Material App -重置文本

在Flutter中,可以使用多个TextFormField来创建一个具有重置文本功能的表单。TextFormField是一个用于接收用户输入的文本字段,可以用于收集表单数据。

要在Material App中创建多个TextFormField,可以使用Form组件来包裹这些字段。Form组件提供了表单的状态管理和验证功能。

下面是一个示例代码,演示了如何在Material App中创建多个TextFormField,并实现重置文本的功能:

代码语言:txt
复制
import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  final GlobalKey<FormState> _formKey = GlobalKey<FormState>();
  final TextEditingController _textController1 = TextEditingController();
  final TextEditingController _textController2 = TextEditingController();

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: Text('Multiple TextFields'),
        ),
        body: Form(
          key: _formKey,
          child: Column(
            children: [
              TextFormField(
                controller: _textController1,
                decoration: InputDecoration(
                  labelText: 'Field 1',
                ),
                validator: (value) {
                  if (value.isEmpty) {
                    return 'Please enter some text';
                  }
                  return null;
                },
              ),
              TextFormField(
                controller: _textController2,
                decoration: InputDecoration(
                  labelText: 'Field 2',
                ),
                validator: (value) {
                  if (value.isEmpty) {
                    return 'Please enter some text';
                  }
                  return null;
                },
              ),
              RaisedButton(
                child: Text('Reset'),
                onPressed: () {
                  _formKey.currentState.reset();
                  _textController1.clear();
                  _textController2.clear();
                },
              ),
            ],
          ),
        ),
      ),
    );
  }
}

在上面的代码中,我们创建了一个包含两个TextFormField的表单。每个TextFormField都有一个TextEditingController来控制文本的输入和获取。我们还使用了Form组件来管理表单的状态和验证。

在重置按钮的onPressed回调中,我们调用了_formKey.currentState.reset()来重置表单的状态,并使用_textController1.clear()和_textController2.clear()来清空文本字段的内容。

这样,当用户点击重置按钮时,表单中的文本字段将被重置为空。

推荐的腾讯云相关产品:腾讯云云服务器(CVM)和腾讯云数据库(TencentDB)。您可以通过以下链接了解更多关于这些产品的信息:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的沙龙

领券