The iOS framework that grows only as fast as its documentation
Nimbus Paging Scroll View


class  NIPageView
 Use NIPagingScrollViewPage instead. More...
class  NIPagingScrollView
 The NIPagingScrollView class provides a UITableView-like interface for loading pages via a data source. More...
protocol  <NIPagingScrollViewDelegate>
 The delegate for NIPagingScrollView. More...
protocol  <NIPagingScrollViewDataSource>
 The data source for NIPagingScrollView. More...
protocol  <NIPagingScrollViewPage>
 The protocol that a paging scroll view page should implement. More...
class  NIPagingScrollViewPage
 A skeleton implementation of a page view. More...


A paging scroll view is a UIScrollView that scrolls horizontally and shows a series of pages that are efficiently recycled.

The Nimbus paging scroll view is powered by a datasource that allows you to separate the data from the view. This makes it easy to efficiently recycle pages and only create as many pages of content as may be visible at any given point in time. Nimbus' implementation also provides helpful features such as keeping the center page centered when the device changes orientation.

Paging scroll views are commonly used in many iOS applications. For example, Nimbus' Photos feature uses a paging scroll view to power its NIPhotoAlbumScrollView.

Building a Component with NIPagingScrollView

NIPagingScrollView works much like a UITableView in that you must implement a data source and optionally a delegate. The data source fetches information about the contents of the paging scroll view, such as the total number of pages and the view for a given page when it is required. The views that you return for pages must conform to the NIPagingScrollViewPage protocol. This is similar to UITableViewCell, but rather than subclass a view you can simply implement a protocol. If you would prefer not to implement the protocol, you can subclass NIPageView which implements the required methods of NIPagingScrollViewPage.