FirebaseRecyclerAdapter mit leerer Ansicht

Ich weiß, dass es viele Möglichkeiten gibt, eine leere Ansicht für eine RecyclerView zu erstellen. Aber meine Frage ist für FirebaseRecyclerView.

Mein Layout ist:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">

<android.support.v7.widget.RecyclerView
    android:id="@+id/feed_recycler_view"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:scrollbars="vertical" />

<ProgressBar
    android:id="@+id/feed_loading"
    style="?android:attr/progressBarStyle"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerInParent="true"
    android:visibility="gone"/>
</RelativeLayout>

So zeige ich Loading ProgressBar an, bevor der RecyclerView seine Elemente füllt. Was nun, wenn der Server kein Objekt hat? In dieser Situation ist mein RecyclerView immer leer und meine Lade-Fortschrittsleiste immer für den Benutzer sichtbar.

Anstatt die Fortschrittsleiste auf unbestimmte Zeit anzuzeigen, möchte ich ein leeres Layout anzeigen. Z.B. "No Data Found" oder eine ähnliche Meldung.

Das Endergebnis sollte lauten: ProgressBar sollte angezeigt werden, bis Daten in RecyclerView geladen wurden, und ProgressBar sollte nach dem Laden der Daten unsichtbar sein. Wenn jedoch keine Daten auf dem Server vorhanden sind, sollte anstelle von ProgressBar ein leeres Layout angezeigt werden.

In normaler RecyclerView haben wir einen Datensatz (eine ArrayList usw.) und wenn dieser leer ist, können wir dieses leere Layout anzeigen. Im Fall von FirebaseRecyclerAdapter ist der Verweis auf Snapshot in meiner Aktivität oder meinem Kontext jedoch nicht vorhanden. Ich habe auch keinen Rückruf, der besagt, dass im Server keine Daten vorhanden sind.

Jede Problemumgehung wird viel helfen.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage