A paged scroll view with cell reuse and basic implementations supporting image display and zooming similar to the image viewer in the iOS gallery application.

I started a project to replicate the iOS gallery to run on the early generation of iOS devices back before iOS 3 came out. I originally had used three20's gallery in an application but found it to lack performance and features compared to the built in gallery. Therefore I decided to see how easy it would be to create a gallery that ran at 60fps on the iPhone 3g, to do this I needed an efficient way to page and display the full size images. This turned into a bit of a nightmare of embedding scroll views inside scroll views and working around subtle bugs in the iOS classes. This was made a lot easier by a WWDC talk about working around bugs in scroll views.




The component follows a similar datasource and delegate approach as a table view, utilizing cell reuse and data model separation.


The source for this component is available on github