2017-05-16 3 views
1

Was ich tun muss, ist das Einfügen von Element an die Spitze RecyclerView. Ich habe Adapter, die List meinen Artikel weiter besteht, und wenn ich an die Spitze der RecyclerView hinzufügen mag ich einfach diesen Code verwenden:notifyItemInserted() funktioniert nicht wie ich erwartet wurde

mItems.add(0, item); 
notifyItemInserted(0) 

Leider ist es nur letztes Element von RecyclerView neu zu laden. Natürlich, wenn ich notifyItemInserted zu notifyDataSetChanged() ändere, funktioniert alles gut. Warum ist notifyItemInserted nicht geeignet?

+0

überprüfen Sie dies: http://stackoverflow.com/questions/39683237/android-recyclerview-adapter-notifyiteminserted-and-notifyitemmoved-at-index-0 – X3Btel

Antwort

3

Sie verwenden dies.

mItems.add(0, item); 
notifyItemInserted(0) 

Sie sollten dies verwenden.

mItems.add(item); 
notifyItemInserted(0) 

Dann arbeiten sie nur wie in ersten Fall werden Sie mit Punkt 0. Indexelement ersetzt, während im zweiten Szenario wird ein Element an der Spitze heißt bei der 0. Position geschoben wird.

+0

Was ist der Unterschied zwischen diesen Teilen des Codes? – ThirdMartian

+0

Hoppla ... !! Mein Fehler. Korrigiert. Danke @ThirdMartian – Ritesh

Verwandte Themen