Skip to content Skip to sidebar Skip to footer

Recyclerview Not Showing Anything After Updating Adapter Data

guys i need help with this matter i have been going through my code for a couple of days to figure whats going wrong but i couldn't figure it out. I have a fragment with a Recycler

Solution 1:

I did call notifyDataSetChanged but this was not the issue after alooooooooot of testing and Logging the problem was with setAdapterData method where i just passed the data reference from the loader to the adapter but this didn't work and i had to clone the arraylist instead of just passing the reference which sounds strange to me and i still don't understand why I had to do that if you can take a look at the setAdapterData method in MyGridAdapter class and tell me what do you think 

Solution 2:

Try invoking notifyDataSetChanged() when you modify your adapter data:

public void setMyAdapterData(ArrayList<HashMap> data){
    this.data = data;
    dataChanged = true;
    notifyDataSetChanged();
    if (listener != null){
        listener.onDataSetChanged(dataChanged);
    }
}

I see that you attempt to do this in the callback on your listener, but perhaps it is null and therefore never firing the notification?

[COMMENT] When I want to replace the entire collection of data in my adapter I often write a method similar to this:

public void setData(List<MyData> newData) {
    this.data.clear();
    this.data.addAll(newData);
    this.notifyDataSetChanged();
}

Post a Comment for "Recyclerview Not Showing Anything After Updating Adapter Data"