• 自定义滚动控件(Pagecontrol)


    //
    //  MyPageCorol.h
    //  lejiahui
    //
    //  Created by iOS开发 on 16/4/10.
    //  Copyright © 2016年 zhongmingwuye. All rights reserved.
    //
    
    #import <UIKit/UIKit.h>
    
    @interface MyPageCorol : UIView
    
    /**  当前页数 */
    @property(nonatomic,assign) NSInteger  correntPage;
    
    /** itmenSize */
    @property(nonatomic,assign) CGSize itmeSize;
    
    + (MyPageCorol *)myPageControlWithSuperView:(UIView *)superView;
    
    - (void)setImage:(UIImage *)image andSelectImage:(UIImage *)slectImage totalNum:(NSInteger)totalNum;
    
    - (void)setColor:(UIColor *)color andSelectColor:(UIColor*)selectColor totalNum:(NSInteger)totalNum;
    
    @end
    
    //
    //  MyPageCorol.m
    //  lejiahui
    //
    //  Created by iOS开发 on 16/4/10.
    //  Copyright © 2016年 zhongmingwuye. All rights reserved.
    //
    
    #import "MyPageCorol.h"
    
    @interface MyPageCorol()
    {
        NSMutableArray * _pageItems;
        UIColor * _selectedColor;
        UIColor * _color;
        
        UIImage * _image;
        UIImage * _selectedImage;
        
        BOOL _isImage;
        
        NSInteger _width;
        NSInteger _height;
    }
    
    @end
    
    @implementation MyPageCorol
    
    + (MyPageCorol *)myPageControlWithSuperView:(UIView *)superView{
        MyPageCorol * pl = [[MyPageCorol alloc]init];
        pl.frame = CGRectMake(0, superView.frame.size.height-20, superView.frame.size.width, 20);
        pl.backgroundColor = [UIColor clearColor];
        [superView addSubview:pl];
        return pl;
    }
    
    - (instancetype)init{
        if (self=[super init]) {
            self.itmeSize = CGSizeMake(0, 0);
        }
        return self;
    }
    
    - (void)setItmeSize:(CGSize)itmeSize{
        _itmeSize = itmeSize;
        _width = itmeSize.width;
        _height = itmeSize.height;
    }
    //设置图片形式
    - (void)setImage:(UIImage *)image andSelectImage:(UIImage *)slectImage totalNum:(NSInteger)totalNum{
        _isImage = YES;
        _image = image;
        _selectedImage = slectImage;
        
        _pageItems = [[NSMutableArray alloc]init];
        NSInteger num = totalNum;
        
        NSInteger height = 10;
        NSInteger width  =20;
        if (self.itmeSize.height!=0&&self.itmeSize.width!=0) {
            height = self.itmeSize.height;
            width = self.itmeSize.width;
        }
        NSInteger sepreate = 5;
        NSInteger totalWidth = num*width+(num-1)*sepreate;
        NSInteger orangex = (self.frame.size.width-totalWidth)/2;
        NSInteger orangey = (self.frame.size.height - height)/2;
        for (int i = 0;i< num; i++) {
            UIImageView * pageView = [[UIImageView alloc]init];
            pageView.frame = CGRectMake(orangex+i*(width+sepreate), orangey, width, height);
            [_pageItems addObject:pageView];
            [self addSubview:pageView];
        }
        self.correntPage = 0;
    }
    
    //设置颜色形式
    - (void)setColor:(UIColor *)color andSelectColor:(UIColor*)selectColor totalNum:(NSInteger)totalNum{
        _pageItems = [[NSMutableArray alloc]init];
        _color = color;
        _selectedColor = selectColor;
    
        NSInteger num = totalNum;
        NSInteger height = 5;
        NSInteger width  =20;
        if (self.itmeSize.height!=0&&self.itmeSize.width!=0) {
            height = self.itmeSize.height;
            width = self.itmeSize.width;
        }
        NSInteger sepreate = 5;
        NSInteger totalWidth = num*width+(num-1)*sepreate;
        NSInteger orangex = (self.frame.size.width-totalWidth)/2;
        NSInteger orangey = (self.frame.size.height - height)/2;
        for (int i = 0;i< num; i++) {
            UIView * pageView = [[UIView alloc]init];
            pageView.frame = CGRectMake(orangex+i*(width+sepreate), orangey, width, height);
            [_pageItems addObject:pageView];
            [self addSubview:pageView];
        }
        self.correntPage = 0;
    }
    
    - (void)setCorrentPage:(NSInteger)correntPage{
        _correntPage = correntPage;
        for (int i = 0; i<_pageItems.count; i++) {
            if (_isImage) {
                UIImageView * imageView= _pageItems[i];
                imageView.image = _image;
                if (correntPage==i) {
                    imageView.image = _selectedImage;
                }
            }else{
                UIView * view = _pageItems[i];
                view.backgroundColor = _color;
                if (correntPage==i) {
                    view.backgroundColor = _selectedColor;
                }
            }
        }
    }
    
    @end
  • 相关阅读:
    第十一节 jQuery特殊效果
    第十节 使用index和一个点击事件实现选项卡
    synchronized和lock两种锁的比较
    常见的四种线程池和区别
    mybatis中的#和$的区别
    web 防止SQL注入
    GIT配置免密登录
    热点 Key 问题的发现与解决
    Redis缓存击穿
    面试必问之JVM原理
  • 原文地址:https://www.cnblogs.com/fusheng-it/p/5374209.html
Copyright © 2020-2023  润新知