Flutter-如何重新启动或重绘当前屏幕小部件

时间:2019-01-01 06:40:25

标签: dart flutter flutter-layout

我正在使用导航抽屉,在其中我设计了一个屏幕名称作为PostProperty屏幕,其中实现了多个文本表单字段,图像上载,我想要的是当用户单击“提交/添加”按钮时,然后是当前屏幕小部件应重绘或所有表单字段均应清除,以便用户可以提交/添加其他小部件,请指导我如何实现此目的。

  

小部件构建代码

  @override
  Widget build(BuildContext context) {
    return new Scaffold(
      key: scaffoldKey,
      resizeToAvoidBottomPadding: false,
      backgroundColor: Colors.white,
      appBar: showAppbar
          ? AppBar(
              title: new Text(
                setAppBarTitle(val_property_type),
                style:
                    TextStyle(color: Colors.white, fontWeight: FontWeight.bold),
              ),
              centerTitle: true,
              backgroundColor: ColorConstant.bg_color,
            )
          : null,
      body: ModalProgressHUD(
        inAsyncCall: _isInAsyncCall,
        child: buildPropertyForm(context),
        opacity: 0.5,
        progressIndicator: CircularProgressIndicator(),
      ),
    );
  }

buildPropertyForm 是我包含所有文本表单字段和其他内容的表单。

  

请参见下面的屏幕截图

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:3)

提交后,您可以动态更改每个TextFormField的键,也可以将TextEditingControllers的值更改为null。