I have a ReyclerView
working with a LinearLayoutManager
and an Adapter<ViewHolder>
. I have a list of items I would like to display in the recyclerview with the insert (slide in) animation. How do I go about this ?
I would like to display the animations with a linearly increasing delay based on the index of the item.
Currently, if I use 2 buttons, 'add' and 'remove', and then do the respective operations on the recyclerview (notifyItemInserted()
and notifyItemRemoved()
, the animations come in nicely.
If I programmatically loop on the data set and add the items, again, using notifyItemInserted()
, I do not see any animation. I just see all the items appear almost at once.
If I use Asynctasks with linear delay, and then add/remove the item in OnPostExecute()
, I still do not see any animation. Also, I see a possibility of running into deadlocks if multiple insert threads are waiting on all remove threads to be completed (with no place for the remove threads to run).
What am I doing wrong ?
I have gone through most of the questions related to this on SO and have spent days poking around the animation part of the recyclerview, still no luck.