【问题标题】:how to clear text editing controller from another class如何从另一个类中清除文本编辑控制器
【发布时间】:2020-12-18 16:28:31
【问题描述】:

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

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

这是清理我的控制器文本编辑的按钮操作

【问题讨论】:

    标签: flutter dart widget


    【解决方案1】:

    您可以使用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

    【讨论】:

    • 我的回答有帮助吗?如果是,请接受/支持答案。如果您有进一步的疑问,请在 cmets 中询问。
    • 抱歉打错了,我写的是_key.reset(),应该是_key.currentState.reset()
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-12
    • 1970-01-01
    • 1970-01-01
    • 2023-01-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多