Коллекция Firebase в ReorderableListView - PullRequest
0 голосов
/ 20 апреля 2020

У меня есть коллекция Firebase во Flutter, которую я хочу иметь в reorderableListView. Документы в коллекции имеют поле «позиция», которое должно определять порядок списка и обновляться по порядку списка.

1 Ответ

0 голосов
/ 21 апреля 2020

Наконец-то я сам с этим поработал.

onReorder: (oldIndex, newIndex) {
  setState(() {
    List<MyObjectClass> objectList =
        myObjects
            .data;
    if (newIndex > oldIndex) {
      newIndex -= 1;
    }

    final MyObjectClass
        myObject = objectList.removeAt(oldIndex);
    objectList.insert(newIndex, myObject);

    for (MyObjectClass o in objectList) {
      o.position = objectList.indexOf(o);
      DatabaseService()
          .updateMyObjects(
              o);
    }
  });
}

Предполагается, что у вас есть функция в классе DatabaseService (), которая отображает коллекцию Firestore на объекты, а затем имеет ReorderableListView в StreamBuilder, который передает ему снимок указанных объектов 'myObjects'.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...