2016-12-01 10 views
1

Wenn ich eine Query a habe, und ich setze es auf eine FirebaseRecyclerAdapter.So aktualisieren Sie die Abfrage eines FirebaseRecyclerAdapter

Dann möchte ich ständig eine neue Query erstellen und die FirebaseRecyclerAdapter aktualisieren.

z.B:

query = database.orderByChild("child"); 
query2 = database.orderByChild("child2"); 
adapter = new FirebaseRecyclerAdapter<...>(...,...,...,query){ 
    ... 
} 

nun nach 3 Sekunden, ich bin für eine Methode suchen, um die Suche zu starten. Ähnliches:

adapter.setQuery(query2); 

Gibt es dafür eine Methode? Oder war Firebase wie immer zu faul, um überhaupt daran zu arbeiten?

Antwort

0

Firebase-Datenbankabfragen sind unveränderlich: Sie können die Eigenschaften einer vorhandenen Abfrage nicht ändern.

Da die Adapter in FirebaseUI hauptsächlich eine Spiegelung der zugrunde liegenden Datenstruktur darstellen, wurde die Option zum Ändern der Abfrage für einen vorhandenen Adapter ebenfalls nicht hinzugefügt.

Wenn ich eine neue Abfrage erstellen, erzeuge ich auch einen neuen Adapter und binden , die an die Ansicht (Liste oder Recycler).

Welchen Vorteil sehen Sie beim Ersetzen der Abfrage unter dem vorhandenen Adapter über das Erstellen eines neuen Adapters für die neue Abfrage?

+0

Der Vorteil ist, ich muss nicht auf Firebase warten, um seine Filterung zu implementieren, ohne Bandbreite zu verschwenden. –

Verwandte Themen