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>>.

Другие вопросы по тегам