2017-01-06 1 views
0

Bitte arbeite an einer Android-Kontakt-App, die ich zuerst 20 Telefonbuchkontakt zur Recycleransicht laden und Onscroll-Listener verwenden soll verbleibender Kontakt zur Recycler-Ansicht beim Scrollen.Wie man den ersten 20 Kontakt zur Recycler-Ansicht lädt und OnScrollListener verwendet, um mehr zur Recycler-Ansicht zu laden

+0

Können Sie Ihren Code zeigen, damit wir sehen können, was Sie bereits versucht haben? – Jonas

+0

Ich versuche, meinen Code zu posten, aber Stackflow gibt mir Einzug Fehler –

Antwort

0

Zuerst fügen Sie 20 Artikel in Arraylist von Contact.on Scroll-Ende fügen Sie weitere Artikel und rufen Sie adapter.notifyDataSetChanged(). Dies ist der Code zum Erkennen des Scroll-Endes.

mRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() { 

@Override 
public void onScrolled(RecyclerView recyclerView, int dx, int dy) { 
    super.onScrolled(recyclerView, dx, dy); 

    visibleItemCount = mRecyclerView.getChildCount(); 
    totalItemCount = mLayoutManager.getItemCount(); 
    firstVisibleItem = mLayoutManager.findFirstVisibleItemPosition(); 

    if (loading) { 
     if (totalItemCount > previousTotal) { 
      loading = false; 
      previousTotal = totalItemCount; 
     } 
    } 
    if (!loading && (totalItemCount - visibleItemCount) 
     <= (firstVisibleItem + visibleThreshold)) { 
     // End has been reached 

     Log.i("Yaeye!", "end called"); 

     // Add more items into contact Arraylist and call notifyDataSetChanged() 

     loading = true; 
    } 
} 

});

Hinweis: Stellen Sie sicher, dass Sie LinearLayoutManager als Layout-Manager für RecyclerView verwenden.

LinearLayoutManager mLayoutManager; 
mLayoutManager = new LinearLayoutManager(this); 
mRecyclerView.setLayoutManager(mLayoutManager); 
+0

Ich habe dies getan, aber wie ich werde ich die For-Schleife zu bekommen nur die ersten 20 Kontakt vom Telefon –

+0

ContactModel mContactmodel = new ContactModel(); mContactmodel.setmName (Namen); mContactmodel.setmPhoneId (Ganzzahl.parseInt (id)); mContactmodel.setmPhoneNumber (phoneNumber); mContactModelList.add (mContactModel); –

+0

@OyediranGideonEniola Dann sollte Frage sein, wie man Kontakt vom Telefonbuch bekommt –

Verwandte Themen