Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Dart 通过要在函数中修改的参数传递变量_Dart_Flutter_Flutter Layout_Dart Pub_Flutter Test - Fatal编程技术网

Dart 通过要在函数中修改的参数传递变量

Dart 通过要在函数中修改的参数传递变量,dart,flutter,flutter-layout,dart-pub,flutter-test,Dart,Flutter,Flutter Layout,Dart Pub,Flutter Test,我有一种方法,可以处理将TextFormField字段的值保存在不同形式的变量中的逻辑,但是当验证形式时,它们不会将值保存在通过参数传递的字符串中 这是其中一种形式的my变量声明: final formKeyMotherboard = new GlobalKey<FormState>(); String _numInvMotherboard, _marcaMotherboard, _modeloMotherboard, _tipoMot

我有一种方法,可以处理将TextFormField字段的值保存在不同形式的变量中的逻辑,但是当验证形式时,它们不会将值保存在通过参数传递的字符串中

这是其中一种形式的my变量声明:

    final formKeyMotherboard = new GlobalKey<FormState>();
  String _numInvMotherboard,
      _marcaMotherboard,
      _modeloMotherboard,
      _tipoMotherboard,
      _detallesMotherboard,
      _fechaMotherboard;

  final TextEditingController controllerNumInventarioMotherboard =
      new TextEditingController();
  final TextEditingController controllerMarcaMotherboard =
      new TextEditingController();
  final TextEditingController controllerModeloMotherboard =
      new TextEditingController();
  final TextEditingController controllerTipoMotherboard =
      new TextEditingController();
  final TextEditingController controllerDetallesMotherboard =
      new TextEditingController();
  final TextEditingController controllerFechaMotherboard =
      new TextEditingController();
final formKeyMotherboard=new GlobalKey();
字符串_numInvMotherboard,
_马卡莫托尔董事会,
_模型董事会,
_tipoMotherboard,
_detallesMotherboard,
_粪热板;
最终文本编辑控制器控制器手动温度板=
新建TextEditingController();
最终文本编辑控制器控制器主板=
新建TextEditingController();
最终文本编辑控制器控制器模型温度板=
新建TextEditingController();
最终文本编辑控制器控制器控制器主板=
新建TextEditingController();
最终文本编辑控制器控制器详细信息主板=
新建TextEditingController();
最终文本编辑控制器控制器主板=
新建TextEditingController();
方法如下:

    Step _defaulFrom(
      {@required IconData icon,
      @required String nameForm,
      @required Key keyForm,
      @required String saveNumInv,
      @required String saveMarca,
      @required String saveModelo,
      @required String saveTipo,
      @required String saveDetalles,
      @required String saveFecha,
      @required TextEditingController controllerNumInv,
      @required TextEditingController controllerMarca,
      @required TextEditingController controllerModelo,
      @required TextEditingController controllerTipo,
      @required TextEditingController controllerDetalle,
      @required TextEditingController controllerFecha,
      TextEditingController controllerEncargado,
      String saveEncargado}) {
    return Step(
        title: Text(
          nameForm,
          style: TextStyle(
            color: Colors.black45,
            fontSize: 22.0,
            fontWeight: FontWeight.bold,
          ),
        ),
        content: Form(
            key: keyForm,
            child: Padding(
              padding: const EdgeInsets.all(12.0),
              child: Column(
                children: <Widget>[
                  Padding(
                    padding: const EdgeInsets.only(top: 8.0),
                    child: TextFormField(
                      controller: controllerNumInv,
                      autocorrect: false,
                      decoration: _defaulImputDecoration(NUM_INVENTARIO, icon),
                      validator: (val) =>
                          val.isEmpty ? ERROR_RELLENE_CAMPO : null,
                      `enter code here`onSaved: (value) => saveNumInv = value,

                      keyboardType: TextInputType.numberWithOptions(),
                    ),
                  ),
                  Padding(
                    padding: const EdgeInsets.only(top: 8.0),
                    child: TextFormField(
                      controller: controllerMarca,
                      autocorrect: false,
                      decoration: _defaulImputDecoration(MARCA, icon),
                      validator: (val) =>
                          val.isEmpty ? ERROR_RELLENE_CAMPO : null,
                      onSaved: (value) => saveMarca = value,

                    ),
                  ),
                  Padding(
                    padding: const EdgeInsets.only(top: 8.0),
                    child: TextFormField(
                      controller: controllerModelo,
                      autocorrect: false,
                      decoration: _defaulImputDecoration(MODELO, icon),
                      validator: (val) =>
                          val.isEmpty ? ERROR_RELLENE_CAMPO : null,
                      onSaved: (value) => saveModelo = value,

                    ),
                  ),
                  Padding(
                    padding: const EdgeInsets.only(top: 8.0),
                    child: TextFormField(
                      controller: controllerTipo,
                      autocorrect: false,
                      decoration: _defaulImputDecoration(TIPO, icon),
                      validator: (val) =>
                          val.isEmpty ? ERROR_RELLENE_CAMPO : null,
                      onSaved: (value) => saveTipo = value,

                    ),
                  ),
                  Padding(
                    padding: const EdgeInsets.only(top: 8.0),
                    child: TextFormField(
                      controller: controllerDetalle,
                      autocorrect: false,
                      decoration: _defaulImputDecoration(DETALLES, icon),
                      validator: (val) =>
                          val.isEmpty ? ERROR_RELLENE_CAMPO : null,
                      onSaved: (value) => saveDetalles = value,

                    ),
                  ),
                  controllerEncargado != null
                      ? Padding(
                          padding: const EdgeInsets.only(top: 8.0),
                          child: TextFormField(
                            controller: controllerEncargado,
                            autocorrect: false,
                            decoration: _defaulImputDecoration(
                                NOMBRE_ENCARGADO, Icons.person),
                            validator: (val) =>
                                val.isEmpty ? ERROR_RELLENE_CAMPO : null,
                            onSaved: (value) => saveEncargado = value,

                          ),
                        )
                      : Divider(
                          color: Colors.transparent,
                        ),
                  Padding(
                    padding: const EdgeInsets.only(top: 8.0),
                    child: TextFormField(
                      autocorrect: false,
                      controller: controllerFecha,
                      decoration: InputDecoration(
                        suffixIcon: IconButton(
                            icon: Icon(Icons.date_range),
                            onPressed: () {
                              _selectDate(context);
                              setState(() {
                                //_saveDate = new DateFormat.yMd(_dateTime)
                              });
                            }),
                        contentPadding: EdgeInsets.all(16.0),
                        border: OutlineInputBorder(
                          borderRadius: BorderRadius.circular(25.0),
                        ),
                        labelText: 'Fecha',
                        labelStyle: TextStyle(
                            color: Colors.black54,
                            fontSize: 16.0,
                            decorationStyle: TextDecorationStyle.wavy),
                      ),
                      validator: (val) =>
                          val.isEmpty ? ERROR_RELLENE_CAMPO : null,
                      onSaved: (value) => saveFecha = value,

                    ),
                  ),

               }

                  })
                ],
              ),
            )));
  }
步骤_defaulFrom(
{@必需的IconData图标,
@必需的字符串名称表单,
@所需的密钥形式,
@必需的字符串saveNumInv,
@必需的字符串saveMarca,
@必需的字符串saveModelo,
@必需的字符串saveTipo,
@必需的字符串saveDetalles,
@必需的字符串saveFecha,
@所需文本编辑控制器控制器LUMINV,
@所需文本编辑控制器控制器RCA,
@所需文本编辑控制器控制器模型,
@所需文本编辑控制器控制器控制器PO,
@所需文本编辑控制器控制器详情,
@所需文本编辑控制器控制器控制器,
TextEditingController控制器ReneCargado,
字符串savencargado}){
返回步骤(
标题:正文(
姓名表,
样式:TextStyle(
颜色:颜色。黑色45,
字体大小:22.0,
fontWeight:fontWeight.bold,
),
),
内容:表格(
关键字:keyForm,
孩子:填充(
填充:常数边集全部(12.0),
子:列(
儿童:[
填充物(
填充:仅限常量边集(顶部:8.0),
子项:TextFormField(
控制器:控制器LUMINV,
自动更正:错误,
装饰:_defaulimputdefaction(NUM_INVENTARIO,icon),
验证器:(val)=>
val.isEmpty?错误\u RELLENE\u CAMPO:null,
`在此处输入代码`onSaved:(value)=>saveNumInv=value,
键盘类型:TextInputType.numberWithOptions(),
),
),
填充物(
填充:仅限常量边集(顶部:8.0),
子项:TextFormField(
控制员:controllerMarca,
自动更正:错误,
装饰:装饰(玛卡,图标),
验证器:(val)=>
val.isEmpty?错误\u RELLENE\u CAMPO:null,
onSaved:(值)=>saveMarca=value,
),
),
填充物(
填充:仅限常量边集(顶部:8.0),
子项:TextFormField(
控制器:控制器模型,
自动更正:错误,
装饰:_defaulImputDecoration(MODELO,icon),
验证器:(val)=>
val.isEmpty?错误\u RELLENE\u CAMPO:null,
onSaved:(值)=>saveModelo=value,
),
),
填充物(
填充:仅限常量边集(顶部:8.0),
子项:TextFormField(
控制员:controllerTipo,,
自动更正:错误,
装饰:装饰(TIPO,图标),
验证器:(val)=>
val.isEmpty?错误\u RELLENE\u CAMPO:null,
onSaved:(值)=>saveTipo=value,
),
),
填充物(
填充:仅限常量边集(顶部:8.0),
子项:TextFormField(
控制器:控制器细节,
自动更正:错误,
装饰:装饰(细节、图标),
验证器:(val)=>
val.isEmpty?错误\u RELLENE\u CAMPO:null,
onSaved:(值)=>SavedCalles=value,
),
),
controllerEncargado!=null
?填充物(
填充:仅限常量边集(顶部:8.0),
子项:TextFormField(
控制员:控制员卡加多,
自动更正:错误,
装饰:_defaulimput装饰(
名为ENCARGADO、图标、人物),
验证器:(val)=>
val.isEmpty?错误\u RELLENE\u CAMPO:null,
onSaved:(值)=>saveEncargado=value,
),
)
:分隔器(
颜色:颜色。透明,
),
填充物(
填充:仅限常量边集(顶部:8.0),
子项:TextFormField(