Android StaggeredGridLayoutManager偏移bug

Ale*_*lex 6 android layout-manager android-support-library staggered-gridview android-recyclerview

当您清除适配器和呼叫notifyDataSetChanged()- StaggedGridLayoutManager经理仍然mCachedStart/EndSpan[]实例.因此,当您向适配器添加新项目时 - 布局管理器绘制具有偏移量的项目,这是一个巨大的问题.

EtsyStaggeredGridView具有resetToTop()清除所有缓存内容并从头开始绘制所有内容的方法.

有一些解决方法:

  • layoutManager.onDetachedFromWindow(recyclerView, null)清除适配器后调用
  • 设置新的布局管理器是坏的

添加20项适配器 滚动一下 删除项目,notifyChanges,添加20项

Ale*_*lex 3

有一些解决方法:

  • layoutManager.onDetachedFromWindow(recyclerView, null)清除适配器后调用
  • 设置新的布局管理器这很糟糕