Android SwipeRefreshLayout mit leerem TextView funktioniert nicht richtig

Was ich tun möchte, ist, dem Benutzer zu erlauben, die Liste zu wischen und zu aktualisieren, es ist egal, ob die Daten dort sind oder nicht. Wenn sich jedoch Daten in der Listenansicht befinden, sollte nur die Listenansicht sichtbar sein, und wenn sich keine Daten befinden, sollte die leere Textansicht sichtbar sein. In beiden Fällen muss der Benutzer in der Lage sein, die Liste durch Streichen zu aktualisieren.

Ich habe versucht, eine Lösung gegebenhier in dieser Diskussion aber keiner von ihnen klingt funktioniert, die Idee, zwei SwipeToRefresh zu nehmen, funktioniert einwandfrei wie angegebenHie, zeigt aber leeren Container an, auch wenn Daten vom Server abgerufen werden.

Ich habe es mit meiner eigenen Logik versucht, die Listview und Textview in ein Relatives / FrameLayout einschließt, aber SwipeToRefresh akzeptiert nur eine Ansicht, wie es sich verhält.

Hier ist ein XML-Snippet, das ich ausprobiert habe

 <android.support.v4.widget.SwipeRefreshLayout
        android:id="@+id/activity_main_swipe_refresh_layout"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="0.945" >


        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent" >

            <ListView
                android:id="@+id/event_list_eventlist"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:divider="@color/event_background"
                android:dividerHeight="1dp" >
            </ListView>

            <TextView
                android:id="@+id/event_txt_nothing_found"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_centerHorizontal="true"
                android:layout_centerInParent="true"
                android:layout_centerVertical="true"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textColor="@android:color/darker_gray"
                android:visibility="gone" />
        </RelativeLayout>
    </android.support.v4.widget.SwipeRefreshLayout>

Bitte hilfe

Antworten auf die Frage(8)

Ihre Antwort auf die Frage