我不想重新绑定我的顶部标题视图项,因为它包含一些重新计算效率不高的图形图表。假设我的recycleView是:

ItemTypeHead1
ItemTypeHead2
ItemTypeList
ItemTypeList
.
.
ItemTypeList


通常,为此,我为每个标头使用一些布尔值,然后在onBindViewHolder中检查该布尔值。例如:

if (!isItemTypeHead1Created && holder instanceof ItemTypeHead1) {
        ((ItemTypeHead1) holder).onBindDataUpdate(Data mData);
        isItemTypeHead1Created = true;
    }


因此,它不会再绑定。但是我正在寻找更好的解决方案。
请分享您的想法,让我们讨论一下。

谢谢

最佳答案

采用:

recyclerView.getRecycledViewPool().setMaxRecycledViews(ItemTypeHead1, 0);


此方法不会回收ItemTypeHead1类型的任何视图(最大数量缓存= 0)

您可以阅读以下内容以获取更多详细信息:
https://www.reddit.com/r/androiddev/comments/2oks1l/recyclerviewgetrecycledviewpoolsetmaxrecycledviews/

09-25 16:30