// // TAPageControl.h // TAPageControl // // Created by Tanguy Aladenise on 2015-01-21. // Copyright (c) 2015 Tanguy Aladenise. All rights reserved. // #import @protocol TAPageControlDelegate; @interface TAPageControl : UIControl /** * Dot view customization properties */ /** * The Class of your custom UIView, make sure to respect the TAAbstractDotView class. */ @property (nonatomic) Class dotViewClass; /** * UIImage to represent a dot. */ @property (nonatomic) UIImage *dotImage; /** * UIImage to represent current page dot. */ @property (nonatomic) UIImage *currentDotImage; /** * Dot size for dot views. Default is 8 by 8. */ @property (nonatomic) CGSize dotSize; @property (nonatomic, strong) UIColor *dotColor; /** * Spacing between two dot views. Default is 8. */ @property (nonatomic) NSInteger spacingBetweenDots; /** * Page control setup properties */ /** * Delegate for TAPageControl */ @property(nonatomic,assign) id delegate; /** * Number of pages for control. Default is 0. */ @property (nonatomic) NSInteger numberOfPages; /** * Current page on which control is active. Default is 0. */ @property (nonatomic) NSInteger currentPage; /** * Hide the control if there is only one page. Default is NO. */ @property (nonatomic) BOOL hidesForSinglePage; /** * Let the control know if should grow bigger by keeping center, or just get longer (right side expanding). By default YES. */ @property (nonatomic) BOOL shouldResizeFromCenter; /** * Return the minimum size required to display control properly for the given page count. * * @param pageCount Number of dots that will require display * * @return The CGSize being the minimum size required. */ - (CGSize)sizeForNumberOfPages:(NSInteger)pageCount; @end @protocol TAPageControlDelegate @optional - (void)TAPageControl:(TAPageControl *)pageControl didSelectPageAtIndex:(NSInteger)index; @end