настраиваемое текстовое поле, которое автоматически добавляет контроллер - PullRequest
0 голосов
/ 08 октября 2018

Я новичок во флаттере. Я хочу создать настраиваемое текстовое поле, которое автоматически добавляет текстовый контроллер.Но это не удалось, код:

class MyInput extends StatelessWidget {
  MyInput(this.onChange) {
    editingController = new TextEditingController();
    editingController.addListener(this.onChange);
  }
  Function() onChange;
  TextEditingController editingController;

  @override
  Widget build(BuildContext context) {
    return TextField(controller: editingController);
  }
}

, поэтому я использовал MyInput следующим образом:

body: new Center(
        child: new Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            new Text(
              'You have pushed the button this many times:',
            ),
            new Text(
              '$_counter',
              style: Theme.of(context).textTheme.display1,
            ),
            TextField(controller: editingController),
            MyInput(_incrementCounter)
          ],
        ),
      ),

, но виджет не удалось, я не могу ничего вводить в текстовое поле по событию!!Интересно, должен ли виджет быть с состоянием, но я попытался, то же самое.

...