This example demonstrates code factoring approaches to UICollectionViewDataSource that allow developers to compose complex and rich data models. In addition, the sample implements swipe to edit, batch editing including drag reordering, and a sophisticated custom UICollectionViewLayout that features pinning headers, global headers, and loading placeholders.
Fixed issue where whenLoaded would be called too early after resetContent
Fixed Issues where pinnableY prevented headers from leaving the screen completely
Fixed logic in buildlayout that caused wrong layouting
Segmented DataSource shows placeholder view on initial load
Fixed issue where AAPLSegmentedDataSource would not forward loading state from sub-datasources
Fixed issue where AAPLSegmentedDataSource would not forward AAPLDataSource's - (void)whenLoaded:(dispatch_block_t)block
Added invalidateLayoutMetrics method to AAPLCollectionViewGridLayout. Use invalidateLayoutMetrics instead of invalidateLayout to ensure a correct re-layouting behaviour.
Bugfixes
Fixed issue where pinnable header's pinned state was animated right after prepareForReuse, leading to visual glitches.
Fixed issue with AAPLSwipeToEditStateMachine still receiving gesture messages after being deallocated.
AAPLCollectionViewController registers reusable views as soon as the datasource changed.
Headers and footers can be optionally layouted along the cells within a section, adhering to interItemSpacing and section insets. Before headers and footers always were layouted outside of the section.
Support for pinned footers. As opposed topinned headers, pinned footers stick to the bottom of the screen if they would otherwise be hidden below the viewport.
Better support for empty/error views with button actions.
iOS 8 SDK
iOS 8
Copyright (C) 2014 Apple Inc. All rights reserved.