olcayertas / RCPageControl

Yet another page control for iOS, with awesome animation powered by facebook pop library.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

RCPageControl

License MIT Build Platform Build Version Build Status

Yet another page control for iOS, with awesome animation powered by Facebook pop library.

RCPageControlDemo

Any idea to make this more awesome? Please feel free to open an issue or make a PR.

Requirements

Run Example

In your terminal,

cd [workspace]/RCPageControl/RCPageControlExample
pod install

Then,

open RCPageControlExample.xcworkspace

Installation

The recommended approach for installating RCPageControl is via the CocoaPods package manager.

In your Podfile, add a line shows below:

pod 'RCPageControl'

Then,

pod update

Usage

The API of RCPageControl is highly similar as UIPageControl.

First of all

#import <RCPageControl.h>

Initialization

  • Using initWithFrame:
RCPageControl *pageControl = [RCPageControl initWithFrame:CGRectMake(0, 0, 100, 10)];
  • Using initWithNumberOfPages:
RCPageControl *pageControl = [RCPageControl initWithNumberOfPages:5];

Callback

  • Using UIControlEvent
[pageControl addTarget:self action:@selector(changePage:) forControlEvents:UIControlEventValueChanged];
  • Using RCCurrentPageChangedBlock
[pageControl setCurrentPageChangedBlock:^(RCPageControl *pageControl) {
	//Code here
}];

Properties

Just list new properties of RCPageControl.

  • indicatorDotGap The distance between two dots from their edges. Default value is 10.f, cannot be smaller than 2.f.

  • indicatorDotWidth The width of dot, you may assume that the dot is likes a circle. Default value is 4.f, cannot be smaller than 2.f.

  • animationSpeed & animationBounciness

We use POPSpringAnimation for dots animation. See POPSpringAnimation.h for more info.

  • animationDuration

The duration for UIView animation. Using in _indicatorIndexLabel animation. Only available when hideCurrentPageIndex is setting to NO. Default is 0.6f.

  • animationScaleFactor

The dot scale factor. Using to calculate the width of current dot. Default is 2.

  • hideCurrentPageIndex

When set to YES, the Page Index Label will be hidden. Default is NO. The displayed page is start from 1.

  • disableAnimation

When set to YES, all indicator dots' changing animation will be disabled. Default is NO.

  • pageIndicatorTintColor

The dot background color. Default is [UIColor lightTextColor].

  • currentPageIndicatorTintColor

The current dot background color. Default is [UIColor whiteColor].

  • currentPageIndexTextTintColor

The Page Index Label's TextColor. Default is [UIColor darkTextColor].

  • currentPageIndexTextFont

The Page Index Label's Font. Default is [UIFont systemFontOfSize:0]. The font size will automatically adjusts by the value of indicatorDotWidth and animationScaleFactor

License

RCPageControl is available under the MIT license. See the LICENSE file for more info.

About

Yet another page control for iOS, with awesome animation powered by facebook pop library.

License:MIT License


Languages

Language:Objective-C 97.2%Language:Ruby 2.8%