GLTableCollectionView
Branch | Status |
---|---|
master | |
develop |
What it is
GLTableCollectionView is a ready to use UITableViewController
with a UICollectionView
for each UITableViewCell
, something like Netflix, Airbnb or the Apple's App Store are doing in their iOS apps. GLTableCollectionView is completely customizable in both his UITableView and UICollectionView parts since it has been made on the same Data Source and Delegate methods with no complicated additions.
GLTableCollectionView | |
---|---|
The same UITableView reusable cells logic provided from Apple's implementation |
|
UICollectionView cell recycle |
|
Both UITableView & UICollectionView can have their own sections and/or headers |
|
Customization of UICollectionViewCell s using the same UICollectionViewDelegate Flow Layout you already know |
|
Previous UICollectionView .contentOffset value restoration after scroll |
|
UICollectionView cell-size-based scroll pagination, see below for instructions | |
Storyboard and Auto Layout compatibility | |
Clean architecture | |
Unit Tests |
Enable/disable scroll pagination
Set paginationEnabled
variable true
in GLTableCollectionViewController class, false
to disable. Default value is true
.
/// Set true to enable UICollectionViews scroll pagination
var paginationEnabled: Bool = true
Demo
How it works
Requirements
- Xcode 8.0+
- Swift 3.0+
- iOS 8.0+
Note
GLTableCollectionView is written using Swift 3.0 so it would only support iOS 8.0+ due to Swift 3 language compatibility, if you use Swift 2.0 in your project or you need iOS 7.0+ compatibility GLTableCollectionView will work too, but you must convert UITableView
and UICollectionView
Data Source and Delegate methods signatures before building your code or Xcode won't compile.