すみません、解決しました!
Flutterでalertダイアログにドロップダウンを作成しています。
期待している挙動:
ドロップダウンで例えば3を選択すると、選択後すぐに3が反映される。
実際の挙動:
選択しても表示はデフォルトの0のままで、一度アラートを閉じて再度開くと、先程選択した値である3が反映されている。
どのようにすれば期待する挙動になるでしょうか?
Dart
1void rightButtonPressed() { 2setState(() { 3 walkDuration = dependencies.stopwatch.elapsedMilliseconds~/60000; 4 if (dependencies.stopwatch.isRunning) { 5 dependencies.stopwatch.stop(); 6 showDialog( 7 context: context, 8 builder: (BuildContext context){ 9 return AlertDialog( 10 actions: <Widget>[ 11 Theme( 12 child: Button( 13 child: const Text('Add'), 14 onPressed: (){ 15 add(); 16 Navigator.of(context).pop(); 17 }, 18 style: Style( 19 color: Colors.white, 20 ) 21 ), 22 ) 23 ], 24 shape: RoundedRectangleBorder( 25 borderRadius: BorderRadius.circular(8)), 26 content: Stack( 27 overflow: Overflow.visible, 28 children: <Widget>[ 29 Form( 30 child: SingleChildScrollView( 31 child: Column( 32 mainAxisSize: MainAxisSize.min, 33 children: <Widget>[ 34 Padding( 35 padding: EdgeInsets.all(5.0), 36 child: Column( 37 // mainAxisAlignment: MainAxisAlignment.spaceEvenly, 38 children: [ 39 DropdownButton( 40 value: numberTimes, 41 items: [ 42 DropdownMenuItem( 43 child: Text("0", style: TextStyle(fontSize:15.0)), 44 value: 0, 45 ), 46 DropdownMenuItem( 47 child: Text("1", style: TextStyle(fontSize:15.0)), 48 value: 1, 49 ), 50 DropdownMenuItem( 51 child: Text("2", style: TextStyle(fontSize:15.0)), 52 value: 2, 53 ), 54 DropdownMenuItem( 55 child: Text("3", style: TextStyle(fontSize:15.0)), 56 value: 3, 57 ), 58 DropdownMenuItem( 59 child: Text("4", style: TextStyle(fontSize:15.0)), 60 value: 4, 61 ), 62 DropdownMenuItem( 63 child: Text("5", style: TextStyle(fontSize:15.0)), 64 value: 5, 65 ), 66 DropdownMenuItem( 67 child: Text("5+", style: TextStyle(fontSize:15.0)), 68 value: 6, 69 ), 70 ], 71 onChanged:(value) { 72 setState((){ 73 numberTimes = value; 74 print(numberTimes); 75 }); 76 } 77 ), 78 ], 79 ) 80 ),
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。