前提・実現したいこと
StatefulWidgetを用いて、タイマーを実装したいです。しかし、コンストラクタで初期化した値を参照することができないです。どこがおかしいか、どのように修正すべきかを教えていただきたいです。
該当のソースコード
dart
1 2class Count extends StatefulWidget { 3 Count({Key key, this.time}) : super(key: key); 4 5 double time; 6 7 8 _CountState createState() => _CountState(); 9} 10 11class _CountState extends State<Count> { 12 double _counter = widget.time; 13 Timer _timer; 14 bool flag = true; 15 16 void _startTimer() { 17 _counter = 10.00; 18 if (_timer != null) { 19 _timer.cancel(); 20以下タイマー実装に必要なコード
発生している問題・エラーメッセージ
dart
1double _counter = widget.time;
の部分に
The instance member 'widget' can't be accessed in an initializer.
というエラーメッセージが出ています。
補足情報(FW/ツールのバージョンなど)
StatelessWidgetでは、
dart
1Count(time: 100), 2Count(time: 50),
のように上記の StatefulWidget を呼び出しています。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。