2017-07-20 5 views
-1

Ich benutze ein SwipeRefreshLayout, um den Inhalt einer Listview neu zu laden. Aber der Indikator wird jedes Mal beim Laden stecken. Gibt es eine Möglichkeit, dieses Problem zu beheben?SwipeRefresh-Anzeige Stecken

+0

Mit "stecken" meinen Sie, dass die Ladeanzeige nie verschwindet? Oder meinst du, dass es nicht animiert? Bitte geben Sie weitere Einzelheiten an. –

+0

es steckt die UI? Ist Aufgabe abgeschlossen, aber Indikator versteckt sich nicht? Brauchen Sie mehr Details –

+0

Ich möchte den Indikator laden (animieren), bis ich die Antwort bekam .. aber was ist das Problem bedeutet zunächst lädt es dann es stecken ist, bevor ich die Antwort vom Backend bekam. – Santhiya

Antwort

0

Sie müssen Ihre SwipeRefreshLayout mit dem Auffrischen zu stoppen, nur um es zu sagen, um zu starten zu aktualisieren.

  • setRefreshing(true) um den Aktualisierungsindikator anzuzeigen.

  • setRefreshing(false), um den Aktualisierungsindikator zu entfernen.

  • Wenn dies nicht hilft, geben Sie bitte weitere Details zu Ihrem Code an.

    0

    Die SwipeRefreshLayout benachrichtigt den Listener jedes Mal, wenn die Geste erneut ausgeführt wird; Der Listener ist verantwortlich für die korrekte Bestimmung, wann er tatsächlich eine Aktualisierung seines Inhalts einleiten soll. Wenn der Listener feststellt, dass keine Aktualisierung stattfinden soll, muss er setRefreshing(false) aufrufen, um alle sichtbaren Anzeichen einer Aktualisierung zu löschen. Wenn eine Aktivität nur die Fortschrittsanimation anzeigen möchte, sollte sie setRefreshing (true) aufrufen. Um die Gesten- und Fortschrittsanimation zu deaktivieren, rufen Sie in der Ansicht setEnabled(false) auf.

    setRefreshing Benachrichtigen Sie das Widget, dass sich der Aktualisierungsstatus geändert hat. Rufen Sie dies nicht auf, wenn die Aktualisierung durch eine Wischgeste ausgelöst wird.

    setRefreshing(true) //to show the refresh indicator. 
    setRefreshing(false) to remove the refresh indicator.