2016-09-30 4 views
0

Ich entwickle eine App mit Schieberegister. Nach der Aktualisierung der Daten in einem Tab und während ich auf eine andere Registerkarte gehe der Text kommt zweimal. Wie Sie dieses Problem zu lösen . Ich benutze die Adapterklasse.Die Daten kommen zweimal nach erfrischenden Recyclerview

Hier ist mein Code.

mSwipeRefreshLayout = (SwipeRefreshLayout) v.findViewById(R.id.swifeRefresh); 
    mSwipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { 
     @Override 
     public void onRefresh() { 
      AsyncFetch(); 

      upcomingJobs.clear(); 
      upcomingJobs.addAll(upcomingJobs); 

      // fire the event 
      uAdapter.notifyDataSetChanged(); 


      // uAdapter.notifyDataSetChanged(); 
     } 
    }); 
    mSwipeRefreshLayout.setRefreshing(false); 

Antwort

0

Fügen Sie diese Funktion in Ihrem adapterClass:

public void clearData() { 
    int size = this.your_list.size(); 
    if (size > 0) { 
     for (int i = 0; i < size; i++) { 
      this.your_list.remove(0); 
     } 

     this.notifyItemRangeRemoved(0, size); 
    } 
} 

Und es dann zu Beginn ruft Ihre

onRefresh() 
Verwandte Themen