getSpanIndex

open fun getSpanIndex(position: Int, spanCount: Int): Int(source)

Returns the final span index of the provided position.

If getOrientation is VERTICAL, this is a column value. If getOrientation is HORIZONTAL, this is a row value.

If you have a faster way to calculate span index for your items, you should override this method. Otherwise, you should enable span index cache (setSpanIndexCacheEnabled) for better performance. When caching is disabled, default implementation traverses all items from 0 to position. When caching is enabled, it calculates from the closest cached value before the position.

If you override this method, you need to make sure it is consistent with getSpanSize. GridLayoutManager does not call this method for each item. It is called only for the reference item and rest of the items are assigned to spans based on the reference item. For example, you cannot assign a position to span 2 while span 1 is empty.

Note that span offsets always start with 0 and are not affected by RTL.

Return

The final span position of the item. Should be between 0 (inclusive) and spanCount(exclusive)

Parameters

position

The position of the item

spanCount

The total number of spans in the grid