Collection View Layouts is a set of custom flow layouts for iOS which imitate general data grid approaches for mobile apps.
Switch branches/tags
Nothing to show
Clone or download
Latest commit a734b83 Dec 1, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Example update readme Dec 1, 2018
SNCollectionViewLayout add example Dec 1, 2018
screenshot screen shot Dec 1, 2018
.gitignore Initial commit Dec 1, 2018
.travis.yml Initial commit Dec 1, 2018
LICENSE Initial commit Dec 1, 2018
README.md Update README.md Dec 1, 2018
SNCollectionViewLayout.podspec update doc Dec 1, 2018
_Pods.xcodeproj Initial commit Dec 1, 2018

README.md

SNCollectionViewLayout

CI Status Version License Platform

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.