Pull-to-refresh animation in UICollectionView with a sticky header flow layout, written in Swift.


I really liked Zee Young's animation so I gave it a shot on iOS. Since I wanted to learn some things that I didn't have the chance to get my hands on lately, I tried using constraints to achieve the parallax effect, use CAShapeLayers for the trees and translate the content offset to the bending. Every button and view should be rendered on the device so I could lay them out in a .xib.

It's basically a UICollectionView with a sticky header flow layout (this one is based on and all the parallax effects happen in applyLayoutAttributes:.




Any contribution is welcome. Just submit a pull request.


If you have any questions about why or how I solved certain things or the code doesn't make sense to you, just write me a message on Twitter.