2017-10-13 2 views
0

Ich habe einen Spinner. In diesen Spinner habe ich eine meiner Firestore-Kollektionen aufgenommen. Ich dachte, aber beim Aufruf der Sammlung konnte ich alle Daten in meinen Spinner laden, aber als ich ein zweites Dokument zu meiner Sammlung hinzufügte, hörte es auf zu arbeiten.Android laden mehrere Firestore-Dokumente

Das ist, was ich jetzt haben:

db.collection("KitList").get().addOnSuccessListener { snapshot -> 
     for (document in snapshot.documents) { 
      val data = document.data 
      val skipRope = data["rope"] as String 
      spinnerArray.add(skipRope) 
      val kettle = data["kettle"] as ArrayList<String> 
      for (item in kettle) { 
       val kettleWeight = "kettle $item" 
       spinnerArray.add(kettleWeight) 
      } 

     } 

    } 

Ich versuchte db.collection("KitList").document("documentname")get().addOnSuccessListener { snapshot -> aber es hat nicht funktioniert, weil mein snapshot.documents einen Fehler bekam.

Kann mir hier jemand helfen? Ich will nur wissen, wie ich mehrere Dokumente aufrufen kann. Danke: D

Antwort

0

1., erstellen Sie Ihr benutzerdefiniertes Datenmodell (ich werde es DataClass nennen). Dann setzen in addOnSuccessListener diesen Code:

snapshot.documents.mapTo(spinnerArray) { it.toObject(DataClass::class.java)} 

Natürlich ersetzen Dataclass mit Ihrem eigenen :)