自定義UIPageController

簡單粗暴,直接貼代碼

-(id) initWithFrame:(CGRect)frame { ? ?

self = [super initWithFrame:frame]; ? ?

_activeImage = [UIImage imageNamed:@"home_banner_pagecontrol_active"]; ? ?

_unActiveImage = [UIImage imageNamed:@"home_banner_pagecontrol_unactive"]; ? ?

return self;

}

-(void) updateDots { ?? ? ?

? for (int i = 0; i < [self.subviews count]; i++) ? ? { ? ?

? ? //圓點 ? ? ? ?

UIView* dot = [self.subviews objectAtIndex:i]; ? ? ? ?

//添加imageView ? ? ?

? if ([dot.subviews count] == 0) { ? ? ? ? ?

? UIImageView * view = [[UIImageView alloc]initWithFrame:dot.bounds]; ? ? ? ? ?

? [dot addSubview:view]; ? ? ?

? }; ?? ? ? ? ? ? ? ?

UIImageView * view = dot.subviews[0]; ?? ? ? ? ? ? ? ?

if (i==self.currentPage) { ? ? ? ? ?

? view.image=self.activeImage; ? ? ? ? ? ?

[view setFrame:CGRectMake(0, 0, kImageWith-1, kImageHeight - 1)]; ? ? ? ? ? ?

dot.backgroundColor = [UIColor clearColor]; ? ? ? ?

}else { ? ? ? ? ? ?

view.image=self.unActiveImage; ? ? ? ? ? ?

[view setFrame:CGRectMake(0, 0, kImageHeight, kImageHeight)]; ? ? ? ? ? ?

dot.backgroundColor = [UIColor clearColor]; ? ? ?

? } ? ?

} ?

} -(void)setCurrentPage:(NSInteger)page { ? ?

[super setCurrentPage:page]; ?

? [self updateDots];

}

其中,setCurrentPage 是UIPageController的set方法

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容