В настоящее время я пытаюсь создать простое приложение-калькулятор во Flutter.
Я столкнулся с проблемой, из-за которой я пытаюсь обновить содержимое виджета с сохранением состояния в виджете без сохранения состояния, который его содержит.
Я прибегнул к использованию экземпляра моего виджета с сохранением состояния. Однако он не обновляется должным образом.
В настоящее время я пытаюсь создать простое приложение-калькулятор во Flutter. Я столкнулся с проблемой, из-за которой я пытаюсь обновить содержимое виджета с сохранением состояния в виджете без сохранения состояния, который его содержит. Я прибегнул к использованию экземпляра моего виджета с сохранением состояния. Однако он не обновляется должным образом.
class CalcHome extends StatelessWidget { @override Widget build(BuildContext context) { return new Scaffold( appBar: new AppBar( title: new Text('Calculator'), ), body: new CalcLayout()); } }
class CalcLayout extends StatelessWidget { @override Widget build(BuildContext context) { return new Column(children: getColumns()); }
list.add(new ResultString()); for (int i = 0; i < 4; i++) { list.add(new Expanded( child: new Row( crossAxisAlignment: CrossAxisAlignment.stretch, children: new List.generate(4, (ind) { var row = labels.sublist(i * 4, i * 4 + 4); var text = row[ind]; return new Expanded( child: new RaisedButton( onPressed: () => _state.doUpdate(text), child: new Text('$text'))); })))); }
return list; } }
class ResultString extends StatefulWidget { @override createState() => new ResultState(); }
class ResultState extends State { var _text = CalcLogic.getResult();
@override Widget build(BuildContext context) { return new Center( child: new Text( "$_text", style: new TextStyle(fontSize: 40.0), ), heightFactor: 2.0, ); }