I migrated CSStickyHeaderFlowLayout library (Obj-C) to swift2.1
[![CI Status](http://img.shields.io/travis/Benjamin Prieur/IOStickyHeader.svg?style=flat)](https://travis-ci.org/Benjamin Prieur/IOStickyHeader)
Parallax, Sticky Headers, Growing image heading, done right in one UICollectionViewLayout.
To run the example project, clone the repo, and run pod install
from the Example directory first.
Don't forget to set your flow layout with IOStickyHeader in your storyboard
Register that nib file to your collection view controller in code:
import IOStickyHeader
let headerNib = UINib(nibName: "IOGrowHeader", bundle: NSBundle.mainBundle())
override func viewDidLoad() {
super.viewDidLoad()
self.collectionView.registerNib(self.headerNib, forSupplementaryViewOfKind: IOStickyHeaderParallaxHeader, withReuseIdentifier: "header")
}
Implement func collectionView(collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, atIndexPath indexPath: NSIndexPath) -> UICollectionReusableView
func collectionView(collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, atIndexPath indexPath: NSIndexPath) -> UICollectionReusableView {
switch kind {
case IOStickyHeaderParallaxHeader:
let cell = collectionView.dequeueReusableSupplementaryViewOfKind(kind, withReuseIdentifier: "header", forIndexPath: indexPath) as! IOGrowHeader
return cell
default:
assert(false, "Unexpected element kind")
}
}
- Xcode 7
- Swift 2.1
- iOS 8 (I haven't really test on iOS 7 but it should work if you're using iOS 7 compatible Storyboard)
IOStickyHeader is available through CocoaPods. To install it, simply add the following line to your Podfile:
use_frameworks!
pod "IOStickyHeader"
Benjamin Prieur
IOStickyHeader is available under the MIT license. See the LICENSE file for more info.