如何从另一个类中清除文本编辑控制器

问题描述

所以我有两个类,按钮和文本字段

这是带有控制器小部件的文本字段

UjianEssaiWidget

这是清除我的controllerTextEditing的按钮操作

Button/Action Widget to clean my controllerTextEditing

解决方法

您可以使用GlobalKey完成此操作。将TextFormField作为孩子Form

GlobalKey<FormState> _key = GlobalKey<FormState>();

class MyForm extends StatelessWidget
{
MyForm({Key key}) : super(key:key);

@override
Widget build(BuildContext context) {
return Form(
key: _key,autovalidate: true,child: // All the form fields will go here
);
 }
}

之后,您可以使用

_key.currentState.reset()

在另一个类中,它将把表单内的每个字段重设为其initialValue