Latest 1.0.1
Homepage https://github.com/ahmedAlmasri/SNCollectionViewLayout
License MIT
Platforms ios 11.0
Authors

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, [email protected]

License

SNCollectionViewLayout is available under the MIT license. See the LICENSE file for more info.

Latest podspec

{
    "name": "SNCollectionViewLayout",
    "version": "1.0.1",
    "swift_version": "4.2",
    "summary": "SNCollectionViewLayout for iOS apps",
    "description": "TODO: Add long description of the pod here.",
    "homepage": "https://github.com/ahmedAlmasri/SNCollectionViewLayout",
    "license": {
        "type": "MIT",
        "file": "LICENSE"
    },
    "authors": {
        "ahmedAlmasri": "[email protected]"
    },
    "source": {
        "git": "https://github.com/ahmedAlmasri/SNCollectionViewLayout.git",
        "tag": "1.0.1"
    },
    "platforms": {
        "ios": "11.0"
    },
    "source_files": "SNCollectionViewLayout/Classes/**/*"
}

Pin It on Pinterest

Share This