遇到这个问题,去网上搜索的答案一般是:
staggeredGridLayoutManager.setGapStrategy(StaggeredGridLayoutManager.GAP_HANDLING_NONE);然后在onScrollStateChanged方法里:
staggeredGridLayoutManager.invalidateSpanAssignments();
但是,这样做之后还是会有item错乱的问题,这种做法是在滑动停止的时候重新requestLayout一下而已,invalidateSpanAssignments()源码如下: