This layout adjusts a content offset if the collection view is updated. You can insert, delete or reload items and StableCollectionViewLayout
will take care of the content offset.
Like this
You should just create and pass StableCollectionViewFlowLayout
to UICollectionView
init
import StableCollectionViewLayout
UICollectionView(frame: .zero, collectionViewLayout: StableCollectionViewFlowLayout())
Also, you can create the own subclass of StableCollectionViewLayout
and use it.
The preferred installation method is with CocoaPods. Add the following to your Podfile
:
pod 'StableCollectionViewLayout', '~> 1.0.2'
For Carthage, add the following to your Cartfile
:
github "aimalygin/StableCollectionViewLayout" ~> 1.0.2
To integrate using Xcode:
File -> Swift Packages -> Add Package Dependency
Enter package URL: https://github.com/aimalygin/StableCollectionViewLayout, and select the latest release.