博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ios UIPageControl 点颜色设置的总结
阅读量:5366 次
发布时间:2019-06-15

本文共 1448 字,大约阅读时间需要 4 分钟。

ios pageControl控件没有点颜色的设置,一开始自己还不信,就一个颜色属性修改,苹果不会这么坑吧,做了很多东西你就会慢慢发现苹果就是这样抗,很多功能得自己去完善。

本来在网上找了些资料都是将pageControl的点当做成一个UIImage,本人用的是xcode5.2调试发现,pageControl子控件没有UIImageView,点是一个UIviwe,通过修改view的layer控制形状。知道这点后自己就有了思路了。

思路:

1、写一个继承UIPageControl类

2、重写UIPageControl的 setCurrentPage方法

3、修改当前点的颜色

 

code:

 

#import <UIKit/UIKit.h>
@interface CommonPageControl : UIPageControl
{
    UIImage *activeImage;
    UIImage *inactiveImage;
}
@end
 
 
#import "CommonPageControl.h"
@implementation CommonPageControl
- (id)initWithFrame:(CGRect)frame
{
    self = [super initWithFrame:frame];
    if (self) {
        // Initialization code
    }
    return self;
}
-(void)updateDots{
    for(int i=0;i<[self.subviews count];i++){
        
        if([(UIView *)[self.subviews objectAtIndex:i] isKindOfClass:[UIView class]]){//目前pageControl控件小点是一个view
            UIView *dot=[self.subviews objectAtIndex:i];
            if(i==self.currentPage){
                dot.backgroundColor=[UIColor whiteColor];
            }
            else{
                dot.backgroundColor = [UIColor colorWithRed:0/255.0 green:0/255.0 blue:0/255.0 alpha:0.1];
            }
        }
    }
}
//重写基类方法
-(void)setCurrentPage:(NSInteger)currentPage{
    [super setCurrentPage:currentPage];
    [self updateDots];
    
}
@end
 
调用:
    CGRect rect;
    rect.origin.x = myScrollView.frame.origin.x;
    rect.origin.y = self.frame.size.height-20;
    rect.size.width = myScrollView.frame.size.width;
    rect.size.height = 20;
    myPagecontrol = [[CommonPageControl alloc] initWithFrame:rect];
    myPagecontrol.userInteractionEnabled=NO;

 

转载于:https://www.cnblogs.com/liangjialun219/p/3922482.html

你可能感兴趣的文章
win10下安装配置mysql-8.0.13--实战可用
查看>>
周记2018.8.27~9.2
查看>>
MySQL中 1305-FUNCTION liangshanhero2.getdate does not exit 问题解决
查看>>
Ctrl+Alt+Down/Up 按键冲突
查看>>
python序列化和json
查看>>
mongodb
查看>>
网格与无网格
查看>>
SSH-struts2的异常处理
查看>>
《30天自制操作系统》学习笔记--第14天
查看>>
LGPL协议的理解
查看>>
1、Python基础
查看>>
Unity The Tag Attribute Matching Rule
查看>>
试着理解下kvm
查看>>
WebService学习总结(二)--使用JDK开发WebService
查看>>
Tizen参考手机RD-210和RD-PQ
查看>>
竞价广告系统-位置拍卖理论
查看>>
策略模式 C#
查看>>
[模板]树状数组
查看>>
[HDU 6447][2018CCPC网络选拔赛 1010][YJJ's Salesman][离散化+线段树+DP]
查看>>
设计模式学习的好方法
查看>>