title: Value from FormKey is always empty on Flutter
body: <p>I have a simple Screen class dart and a controller for this Screen here is the form:</p>
  <pre><code> Container(
                    height: screenHeight * 0.8,
                    width: double.infinity,
                    child: Column(
                      mainAxisSize: MainAxisSize.min,
                      mainAxisAlignment: MainAxisAlignment.center,
                      children: &lt;Widget&gt;[
                        Image(
                          image: AssetImage('assets/images/cumpra_logo_dark.png'),
                          height: screenHeight * 0.08,
                        ),
                        SizedBox(
                          height: screenHeight * 0.04,
                        ),
                        Container(
                          width: double.infinity,
                          child: Padding(
                            padding: const EdgeInsets.all(20.0),
                            child: Column(
                              mainAxisAlignment: MainAxisAlignment.center,
                              children: &lt;Widget&gt;[
                                Form(
                                  key: _con.formKey,
                                  child: Column(
                                    children: &lt;Widget&gt;[
                                      Container(
                                        width: screenWidth * 0.7,
                                        child: TextFormField(
                                          style: TextStyle(
                                            fontSize: screenHeight * 0.03,
                                            color: Colors.black,
                                          ),
                                          inputFormatters: [
                                            UpperCaseTextFormatter(),
                                          ],
                                          textAlign: TextAlign.center,
                                          decoration: InputDecoration(
                                            filled: true,
                                            fillColor: Color(0XFFe0e0e0),
                                            hintText: 'Código da Empresa',
                                            contentPadding: const EdgeInsets.only(
                                                left: 14.0,
                                                bottom: 8.0,
                                                top: 8.0),
                                            focusedBorder: OutlineInputBorder(
                                              borderSide:
                                                  BorderSide(color: Colors.white),
                                              borderRadius:
                                                  BorderRadius.circular(25.7),
                                            ),
                                            enabledBorder: UnderlineInputBorder(
                                              borderSide:
                                                  BorderSide(color: Colors.white),
                                              borderRadius:
                                                  BorderRadius.circular(25.7),
                                            ),
                                          ),
                                          validator: (value) {
                                            if (value.isEmpty) {
                                              return 'Campo obrigatório';
                                            }
                                            if (value.length &lt; 6) {
                                              return 'Mínimo de 6 dígitos';
                                            }
                                            return null;
                                          },
                                          onChanged: (String text) {
                                            _con.userDataTemp['pin'] = text;
                                          },
                                        ),
                                      ),
                                      SizedBox(
                                        height: screenHeight * 0.04,
                                      ),
                                      Container(
                                        width: screenWidth * 0.7,
                                        child: TextFormField(
                                          keyboardType: TextInputType.number,
                                          obscureText: true,
                                          autofocus: false,
                                          style: TextStyle(
                                            fontSize: screenHeight * 0.03,
                                            color: Colors.black,
                                          ),
                                          textAlign: TextAlign.center,
                                          decoration: InputDecoration(
                                            filled: true,
                                            fillColor: Color(0XFFe0e0e0),
                                            hintText: 'Número de Acesso',
                                            contentPadding: const EdgeInsets.only(
                                                left: 14.0,
                                                bottom: 8.0,
                                                top: 8.0),
                                            focusedBorder: OutlineInputBorder(
                                              borderSide:
                                                  BorderSide(color: Colors.white),
                                              borderRadius:
                                                  BorderRadius.circular(25.7),
                                            ),
                                            enabledBorder: UnderlineInputBorder(
                                              borderSide:
                                                  BorderSide(color: Colors.white),
                                              borderRadius:
                                                  BorderRadius.circular(25.7),
                                            ),
                                          ),
                                          validator: (value) {
                                            if (value.isEmpty) {
                                              return 'Campo obrigatório';
                                            }
                                            if (value.length &lt; 6) {
                                              return 'Mínimo de 6 dígitos';
                                            }
                                            return null;
                                          },
                                          onChanged: (String text) {
                                            _con.userDataTemp['code'] = text;
                                          },
                                        ),
                                      ),
                                      SizedBox(
                                        height: screenHeight * 0.06,
                                      ),
                                      Container(
                                        width: screenWidth * 0.7,
                                        child: RaisedButton(
                                          onPressed: _con.signIn,
                                          child: Text('LOGAR'),
                                          padding: EdgeInsets.symmetric(
                                            horizontal: 10.0,
                                            vertical: 12.0,
                                          ),
                                          shape: RoundedRectangleBorder(
                                            borderRadius:
                                                BorderRadius.circular(30.0),
                                          ),
                                          color: ThemeColor.AppSecundaryColor,
                                          textColor: Colors.white,
                                          elevation: 5,
                                        ),
                                      ),
                                      SizedBox(
                                        height: 30.0,
                                      ),
                                    ],
                                  ),
                                ),
                              ],
                            ),
                          ),
                        ),
                      ],
                    ),
                  )
  </code></pre>
  <p>I've already put the KEY here <strong>key: _con.formKey,</strong> _con reference from my controller here is the code:</p>
  <pre><code>  LoginController(context) {
      this.context = context;
      formKey = new GlobalKey&lt;FormState&gt;();
      this.scaffoldKey = new GlobalKey&lt;ScaffoldState&gt;();
      utilService = Provider.of&lt;UtilService&gt;(context, listen: false);
      sharedService = Provider.of&lt;SharedService&gt;(context, listen: false);
      userService = Provider.of&lt;UserService&gt;(context, listen: false);
      authService = Provider.of&lt;AuthService&gt;(context, listen: false);
    }
  </code></pre>
  <p>Why always when i press the button <strong>&quot;LOGAR&quot;</strong> the code go to this validate:</p>
  <pre><code> validator: (value) {
                                        if (value.isEmpty) {
                                          return 'Campo obrigatório';
                                        }
                                        if (value.length &lt; 6) {
                                          return 'Mínimo de 6 dígitos';
                                        }
                                        return null;
                                      },
                                      onChanged: (String text) {
                                        _con.userDataTemp['pin'] = text;
                                      },
  </code></pre>
  <p>But always this value is EMPTY, what I'm missing?</p>