//
|
// KirotoPageControl.m
|
// YiBaiSong
|
//
|
// Created by kirito_song on 16/4/14.
|
// Copyright © 2016年 yibaisong. All rights reserved.
|
//
|
|
#import "KTPageControl.h"
|
|
|
@interface KTPageControl()
|
@property (nonatomic) CGSize size;
|
|
@end
|
|
@implementation KTPageControl
|
|
/*
|
// Only override drawRect: if you perform custom drawing.
|
// An empty implementation adversely affects performance during animation.
|
- (void)drawRect:(CGRect)rect {
|
// Drawing code
|
}
|
*/
|
|
|
-(instancetype)initWithFrame:(CGRect)frame currentImage:(UIImage *)currentImage andDefaultImage:(UIImage *)defaultImage {
|
|
self = [super initWithFrame:frame];
|
self.currentImage = currentImage;
|
self.defaultImage = defaultImage;
|
return self;
|
}
|
|
-(instancetype) init {
|
self = [super init];
|
return self;
|
}
|
|
-(void) setUpDots
|
|
{
|
|
if (self.currentImage && self.defaultImage) {
|
self.size = self.currentImage.size;
|
}else {
|
self.size = CGSizeMake(7, 7);
|
}
|
|
if (self.pageSize.height && self.pageSize.width) {
|
self.size =self.pageSize;
|
}
|
|
for (int i=0; i<[self.subviews count]; i++)
|
{
|
|
UIView* dot = [self.subviews objectAtIndex:i];
|
|
[dot setFrame:CGRectMake(dot.frame.origin.x, dot.frame.origin.y, self.size.width, self.size.width)];
|
if ([dot.subviews count] == 0) {
|
UIImageView * view = [[UIImageView alloc]initWithFrame:dot.bounds];
|
[dot addSubview:view];
|
};
|
UIImageView * view = dot.subviews[0];
|
|
if (i==self.currentPage) {
|
if (self.currentImage) {
|
view.image=self.currentImage;
|
dot.backgroundColor = [UIColor clearColor];
|
}else {
|
view.image = nil;
|
dot.backgroundColor = self.currentPageIndicatorTintColor;
|
}
|
}else if (self.defaultImage) {
|
view.image=self.defaultImage;
|
dot.backgroundColor = [UIColor clearColor];
|
}else {
|
view.image = nil;
|
dot.backgroundColor = self.pageIndicatorTintColor;
|
}
|
}
|
}
|
|
|
-(void) setCurrentPage:(NSInteger)page
|
|
{
|
|
[super setCurrentPage:page];
|
|
[self setUpDots];
|
|
}
|
|
|
|
@end
|