ScreenShots
Example
To run the example project, clone the repo, and run pod install from the Example directory first.
Using
1- Create instance
let snCollectionViewLayout = SNCollectionViewLayout() snCollectionViewLayout.fixedDivisionCount = 4 // Columns for .vertical, rows for .horizontal snCollectionViewLayout.delegate = self myCollectionView.collectionViewLayout = snCollectionViewLayout
2- Delegate
// scale for items based number of columns func scaleForItem(inCollectionView collectionView: UICollectionView, withLayout layout: UICollectionViewLayout, atIndexPath indexPath: IndexPath) -> UInt { if indexPath.row == 0 || indexPath.row == 3 || indexPath.row == 10 || indexPath.row == 70 { return 2 } return 1 } // height for item if set fixedDimension height equal width func itemFlexibleDimension(inCollectionView collectionView: UICollectionView, withLayout layout: UICollectionViewLayout, fixedDimension: CGFloat) -> CGFloat { return fixedDimension } // header height func headerFlexibleDimension(inCollectionView collectionView: UICollectionView, withLayout layout: UICollectionViewLayout, fixedDimension: CGFloat) -> CGFloat { return 0 }
Requirements
- Swift 4.2+
- Xcode 10.0+
- iOS 11.0+
Installation
SNCollectionViewLayout is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod 'SNCollectionViewLayout'
Author
ahmedAlmasri, ahmed.almasri@ymail.com
License
SNCollectionViewLayout is available under the MIT license. See the LICENSE file for more info.
