Skip to content

Commit

Permalink
Improve staggered grid check for recycler view
Browse files Browse the repository at this point in the history
  • Loading branch information
pranavpandey committed Jun 4, 2023
1 parent 60bc78a commit 3a0ec6a
Showing 1 changed file with 14 additions and 11 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -549,19 +549,22 @@ public void run() {
protected final Runnable mStaggeredGridRunnable = new Runnable() {
@Override
public void run() {
if (mRecyclerView != null && mRecyclerViewLayoutManager != null
&& mRecyclerView.getLayoutManager() instanceof StaggeredGridLayoutManager) {
((StaggeredGridLayoutManager) mRecyclerViewLayoutManager).setGapStrategy(
((StaggeredGridLayoutManager) mRecyclerViewLayoutManager)
.getGapStrategy() | GAP_HANDLING_MOVE_ITEMS_BETWEEN_SPANS);
((StaggeredGridLayoutManager) mRecyclerViewLayoutManager)
.invalidateSpanAssignments();
if (mRecyclerView == null || mRecyclerViewLayoutManager == null
|| !(mRecyclerView.getLayoutManager() instanceof StaggeredGridLayoutManager)
|| mRecyclerViewLayoutManager.getChildCount() <= 0) {
return;
}

if (((StaggeredGridLayoutManager)
mRecyclerViewLayoutManager).getSpanCount() > 1) {
((StaggeredGridLayoutManager) mRecyclerViewLayoutManager).setGapStrategy(
((StaggeredGridLayoutManager) mRecyclerViewLayoutManager)
.scrollToPositionWithOffset(0, 0);
}
.getGapStrategy() | GAP_HANDLING_MOVE_ITEMS_BETWEEN_SPANS);
((StaggeredGridLayoutManager) mRecyclerViewLayoutManager)
.invalidateSpanAssignments();

if (((StaggeredGridLayoutManager)
mRecyclerViewLayoutManager).getSpanCount() > 1) {
((StaggeredGridLayoutManager) mRecyclerViewLayoutManager)
.scrollToPositionWithOffset(0, 0);
}
}
};
Expand Down

0 comments on commit 3a0ec6a

Please sign in to comment.