5.x | Third party Layout Managers - davideas/FlexibleAdapter GitHub Wiki
Interface
The IFlexibleLayoutManager
interface will make any third party LayoutManager suitable for FlexibleAdapter.
Suppose you have any XYZLayoutManager
library imported, you create a new class by extending that XYZLayoutManager and implementing IFlexibleLayoutManager.
:information_source: Note: If you use the internal SmoothScroller Layout Managers, those, already implement this interface.
Example
:warning: Warning: Some methods could be already implemented by XYZLayoutManager! If so, don't override them.
public class FlexibleXYZLayoutManager
extends XYZLayoutManager
implements IFlexibleLayoutManager {
@Override
public int getOrientation() {
return ...
}
@Override
public int getSpanCount() {
return ...
}
@Override
public int findFirstCompletelyVisibleItemPosition() {
return ...
}
@Override
public int findFirstVisibleItemPosition() {
return ...
}
@Override
public int findLastCompletelyVisibleItemPosition() {
return ...
}
@Override
public int findLastVisibleItemPosition() {
return ...
}
}