Значения раскрывающегося списка не меняются в модальном режиме FlutterAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Значения раскрывающегося списка не меняются в модальном режиме Flutter

Сообщение Anonymous »

У меня есть этот раскрывающийся виджет в модальном окне, и я не могу изменить значение в виджете, пока использую setState, и каждый раз, когда я меняю значение, я должен закрыть модальное окно а затем значение изменяется.
это мой код:
var chosenRecentDay = 1;
List daysList = [for (var i = 1; i < 31; i++) i];
int defaultDropDownValue = 1;

showModalBottomSheet(
context: context,
builder: (BuildContext context) {
return SizedBox(
height: 500.0,
child: Center(
child: Padding(
padding: const EdgeInsets.symmetric(
vertical: 20.0),
child: Column(
mainAxisAlignment:
MainAxisAlignment.start,
children: [
SizedBox(
width: 150.0,
height: 45.0,
child: Center(
child: DropdownButton(
value: defaultDropDownValue,
menuMaxHeight: 250.0,
icon: const Icon(
Icons
.arrow_drop_down_circle_rounded,
color: Color(0xffF85E63),
),
borderRadius:
BorderRadius.circular(
30.0),
alignment: Alignment.center,
underline: Container(
color:
Colors.transparent),
items: daysList.map<
DropdownMenuItem<
dynamic>>(
(dynamic value) {
var convertedList =
value.toString();
return DropdownMenuItem<
dynamic>(
value: value,
child: Row(
mainAxisAlignment:
MainAxisAlignment
.start,
children: [
Padding(
padding:
const EdgeInsets
.symmetric(
horizontal:
5.0),
child: Text(
convertedList,
style:
const TextStyle(
color: Color(
0xffF85E63),
fontFamily:
'Lalezar',
fontSize: 18.0,
),
),
),
],
),
);
}).toList(),
onChanged: (val) {
setState(() {
defaultDropDownValue =
val!;
chosenRecentDay = val;
});
},
),
),
),
],
),
),
),
);
},
);


Подробнее здесь: https://stackoverflow.com/questions/782 ... tter-modal
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»