UICollectionViewLayout subclass for displaying items of different sizes in a grid without wasting any visual space. Inspired by: http://www.crispymtn.com/stories/the-algorithm-for-a-perfectly-balanced-photo-gallery
Objective-C Ruby
Latest commit 3e28b0d Dec 28, 2015 @njdehoog Update README.md

README.md

NHBalancedFlowLayout

UICollectionViewLayout subclass for displaying items of different sizes in a grid without wasting any visual space. Inspired by: http://www.crispymtn.com/stories/the-algorithm-for-a-perfectly-balanced-photo-gallery

This project is no longer maintained. For a more up-to-date version, check out: https://github.com/graetzer/NHBalancedFlowLayout

Notes

  • Tested with iOS 7, but should be compatible with iOS6 as well
  • Works with iPhone and iPad
  • All interface orientations are supported

Screenshots

Installation

The easiest way is to use CocoaPods. If you don't already, here's a guide.

pod 'NHBalancedFlowLayout', '~> 0.2'

If you don't use CocoaPods, you'll need to copy the following files into your project:

  • NHBalancedFlowLayout.h
  • NHBalancedFlowLayout.m
  • NHLinearPartition.h
  • NHLinearPartition.m

Credits

Attributions for the photos in the same order as they appear in the demo: