• Stars
    star
    157
  • Rank 238,399 (Top 5 %)
  • Language
    Swift
  • License
    MIT License
  • Created about 6 years ago
  • Updated over 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

🌄 UICollectionViewLayout subclass inspired by Instagram Discover page style layout.

SquareFlowLayout

Swift 4.2.x License PRs Welcome

Smiley face

Makes your UICollectionView to looks like Instagram explore has never been so easy before. SquareFlowLayout provide dynamic layout generation by defining which IndexPath should be expanded.

Installation

CocoaPods

pod 'SquareFlowLayout'

Manually

  1. Download and drop Classes folder into your project.
  2. Congratulations!

Usage

  1. Set SquareFlowLayout to your UICollectionView and set it flowDelegate
    let flowLayout = SquareFlowLayout()
    flowLayout.flowDelegate = self
    self.collectionView.collectionViewLayout = flowLayout
  1. Make your class conform to SquareFlowLayoutDelegate
  2. Use delegate method to decide which cell should be pinned
extension ViewController: SquareFlowLayoutDelegate {
    func shouldExpandItem(at indexPath: IndexPath) -> Bool {
        return self.layoutValues[indexPath.row] == .expanded
    }
}
  1. Look into example project for more info

Contributing to this project

If you like this tool, show your support by tell me how do u use it.

License

This code is distributed under the terms and conditions of the MIT license.