Получить мои объекты пожарного депо, чтобы получить мой список изображений. Пожарное хранилище отображает все в tableView. - PullRequest
0 голосов
/ 18 января 2020

У меня есть коллекция событий в Firestore. Я извлекаю элементы, которые храню в массиве, один раз в таблице я просматриваю его, чтобы получить UID, который позволяет мне получить соответствующее изображение в firebase-Storage. У меня есть папка (Event_test / "UID")

I можно получить обе вещи одновременно, только я не вижу, как отобразить все это в табличном представлении. ярлык для названия мероприятия Изображение

спасибо, если вы можете мне помочь.

Я объявляю мои две объектные картины

private var events: [Cevent] = []
private var list_images: [UIImage] = []

Мои две функции для извлечения из базы данных

func recupEvent() {
        Constants.Firebase.db.collection(Constants.collection.Cevent).order(by: Constants.Cevent.start)
            .addSnapshotListener { querySnapshot, error in
                guard let snapshot = querySnapshot else {
                    print("Error fetching snapshots: \(error!)")
                    return
                }
                snapshot.documentChanges.forEach { diff in
                    if (diff.type == .added) {
                        //  print("New Event: \(diff.document.data())")
                        let event = Cevent(dictionary: diff.document.data())

                        let img = Constants.Firebase.storage.reference().child("event_test/" + ((event?.uid)!) + ".jpg")

                        // Download in memory with a maximum allowed size of 1MB (1 * 1024 * 1024 bytes)
                        img.getData(maxSize: 1 * 1024 * 1024) { data, error in
                            if error != nil {
                                // Uh-oh, an error occurred!
                                print(error)
                            } else {

                                // Data for "images/island.jpg" is returned
                                let image = UIImage(data: data!)

                                // mise de l'image dans le tableau des images
                                self.list_images.append(image!)
                                // appel de la fonction qui mets en places les cellules
                                self.update()


                            }

                        }

                        self.events.append(event!)
                        print("event " + String(self.events.count))
                        //   print(self.list_images.count)



                    }

                    if (diff.type == .modified) {
                        print("Modified Event: \(diff.document.data())")
                    }
                    if (diff.type == .removed) {
                        print("Removed Event: \(diff.document.data())")
                    }
                }
        }
    }

    func update()  {
        for event in events {
            for image in list_images {
                imageCell.image = image
                dateCell.text = event.name
            }
        }
    }
...