#Introducing Collection Views The sample application to accompany my conference talk on, yes you guessed it, UICollectionView.
Slides can be downloaded from here.
- Xcode 4.5
- iOS 6+
##Summary It's a universal app using Storyboards and ARC and targeting iOS 6, but I mostly focused on the iPad, so some of the layouts aren't really optimized for iPhone (I didn't bother shrinking the cell size for iPhone, so not so many fit on the screen at once).
The app presents the speaker roster from various CocoaConf conferences. Each conference date is a section and the speakers at that event are the items in that section. It has 5 different layouts. Use a 2-finger tap to switch between layouts. (A 3 finger tap will switch back to previous layout, i.e. cycles through the layouts in the opposite direction.)
##Grid Layout A standard UICollectionViewFlowLayout-derived layout. Demonstrates the flow layout plus use of supplementary and decoration views. ##Line Layout Another UICollectionViewFlowLayout-derived layout. This one is adapted from the Apple sample of the same name from WWDC 2012 Session 219. Demonstrates a single line horizontal layout and use of shouldInvalidateLayoutForBoundsChange: as well as use of custom layout attributes. ##Cover Flow Layout Derived from Line Layout but adapted to look more like Cover Flow. ##Stacks Layout A UICollectionViewLayout-derived layout (not flow layout). Pinch out on the photo stacks to expand them and it will switch to Grid Layout. Demonstrates custom layouts, gestures, and custom layout attributes. ##Spiral Layout Another UICollectionViewLayout-derived layout. This one is adapted from the Apple sample CircleLayout from WWDC 2012 Session 219. Only instead of a circle, items are arranged in a spiral that wraps 1 1/2 times around and fits the screen in either landscape or portrait. It was also adapted to support multiple sections (1 spiral per screen) in a horizontally scrolling layout. Swipe up on a speaker card and it will be flicked off screen and disappear. Tap on the header to add a speaker back (expands out from center). Demonstrates custom layouts, gestures, and custom delete and insert animations.
Backgrounds by Glyphish