Flutter - Как перезапустить или перерисовать текущий виджет экрана - PullRequest
0 голосов
/ 01 января 2019

Я использую навигационный ящик, и в нем у меня есть одно экранное имя в качестве экрана 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 голосов
/ 01 января 2019

Вы можете изменить ключ для каждого TextFormField динамически после отправки, а также изменить значения TextEditingControllers на null.

...