ml-opensource / FZCarousel

FZCarousel provides a straightforward, lightweight interface for producing an "infinitely" scrolling carousel in iOS apps.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

FZCarousel

Demo

demo

Introduction

FZCarouselCollectionViewDelegate provides a straightforward, lightweight interface for producing an "infinitely" scrolling carousel.

Usage

Implementing a subclass

Users of this class should begin by subclassing it. Subclasses should handle all UICollectionViewDataSource, UICollectionViewDelegateFlowLayout, and UICollectionViewDelegate methods that need to be overwritten to produce the desired collectionView layout. At minimum, it is expected that users will overwrite -collectionView:cellForItemAtIndexPath:, and an exception will be thrown if this is not the case.

This class, in turn, will handle all "carousel concerns," which include manipulation and syncing of the data array, page control updates, and, of course, carousel cranking.

Standard Configuration

self.carouselCollectionViewDelegate = [FZDemoCarouselCollectionViewDelegate carouselCollectionViewDelegateForCollectionView:self.collectionView dataArray:self.dataArray defaultCrankInterval:2.0f lazyCrankInterval:2.5f];

Responding to cell selection

self.carouselCollectionViewDelegate.didSelectCellBlock = 
^(UICollectionView *inCollectionView, NSIndexPath *inIndexPath, id inDataForIndexPath)							
{												
	[tmpSelf showSelectionIndicator:YES withData:inDataForIndexPath];
};

Controlling the carousel

[self.carouselCollectionViewDelegate beginCarousel];
[self.carouselCollectionViewDelegate endCarousel];

About

FZCarousel provides a straightforward, lightweight interface for producing an "infinitely" scrolling carousel in iOS apps.

License:Other


Languages

Language:Objective-C 97.6%Language:Ruby 2.4%