A ready-to-use UITableViewController with a UICollectionView in each cell, mimicking layouts like Netflix and the App Store.
GLTableCollectionView is a Swift library that provides a UITableViewController where each UITableViewCell contains a horizontally scrolling UICollectionView. It solves the problem of implementing complex, nested layouts—like those in Netflix or the App Store—by combining two core iOS components in a clean, reusable way.
iOS developers building apps that require horizontal scrolling sections within vertical lists, such as media catalogs, app stores, or dashboard interfaces.
Developers choose GLTableCollectionView because it offers a ready-to-use, customizable solution that maintains native performance and uses familiar UIKit APIs, eliminating the need to build such complex layouts from scratch.
Netflix and App Store like UITableView with UICollectionView, written in pure Swift 4.2
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Leverages Apple's reusable cell logic for both UITableView and UICollectionView, ensuring smooth scrolling and memory efficiency as highlighted in the README's emphasis on native reusability.
Allows independent sections and headers for both table and collection views, enabling complex layouts like those in Netflix or App Store without custom hacks.
Automatically restores UICollectionView contentOffset after scrolling, improving user experience in nested scrolling scenarios as specified in the features.
Seamlessly integrates with Interface Builder and Auto Layout, making it easy to design and maintain UI components visually, as noted in the compatibility section.
Limited to UIKit and does not support SwiftUI, which may be a drawback for teams transitioning to Apple's newer UI framework or building modern iOS apps.
Managing data for nested UITableView and UICollectionView can be cumbersome, requiring careful coordination between multiple data sources and delegates, increasing setup complexity.
The library is built for Swift 4.2 and Xcode 10.0+, which might not be compatible with the latest Swift versions without updates, risking future maintenance issues and limited access to newer iOS APIs.