Flutter Hive - как перечислить объекты из коробки в качестве элементов поля выбора
Я делаю мобильное приложение Flutter с простой базой данных Hive. У меня есть несколько объектов Account в моем поле Hive, и мне нужно показать их пользователю в виде списка для выбора (например, в DropdownButton). Как я могу это реализовать?
Я пытался указать значения в виде списка, но получаю сообщение об ошибке
The argument type 'List<Account>' can't be assigned to the parameter type 'List<DropdownMenuItem<Account>>'.
DropdownButton(
items: Hive.box<Account>('accounts').values.toList(),
),
Изменить: уже решено - вот решение
DropdownButton(
items: Hive.box<Account>('accounts').values.toList().map((Account acc) {
return DropdownMenuItem<Account>(
value: acc,
child: Text(acc.name),
);
}).toList(),
),
1 ответ
Я могу опоздать, но вы пытаетесь дать DropdownButton список учетных записей. Но DropdownButton принимает только список DropDownMenuItems.
Попробуйте сопоставить свой список с List<DropdownMenuItem<Account>>.