Flutter-如何使用导航器在TextFormField中获取值

问题描述

容器( 填充:EdgeInsets.all(15),

  child: Column(
    children: [
      TextFormField(
        onTap: () =>
            Navigator.of(context).pushNamed(AirportSearchScreen.id).then(
                  (value) 
              {
            setState(() {
              _initValues['departureCity'] = value;
              print(_initValues['departureCity']);
            });
          },),decoration: Inputdecoration(
          labelText: 'Departure City',initialValue: _initValues['departureCity'],],);

当我打印值时,它给出正确的结果。但是我无法在TextFormField上获得结果。

解决方法

请尝试以下代码:

child: Column(
        children: [
          TextFormField(
            onTap: () =>
            Navigator.of(context).pushNamed(AirportSearchScreen.id).then(
                  (value) 
              {
               setState(() {
                    _initValues['departureCity'] = value;
                    print(_initValues['departureCity']);
                  });
                },),decoration: InputDecoration(
              labelText: 'Departure City',controller: TextEditingController(text: _initValues['departureCity']),],