zoukankan      html  css  js  c++  java
  • UiPaged的自定义

    我们在写轮播图片时使用系统的控件往往无法满足项目需求,因此我们就开始自定义控件了。

    以下是UIPageControl的自定义:

    #import <UIKit/UIKit.h>

    @interface UPage : UIPageControl

    {

        UIImage *_activeImage;//(当前页面所表示图片)

        UIImage *_inactiveImage;//(当前界面外的图片)

    }

    @property(nonatomic,retain) UIImage *activeImage,*inactiveImage;

    @end

    #import "UPage.h"

    @implementation UPage

    @synthesize activeImage=_activeImage,inactiveImage=_inactiveImage;

    - (id)initWithFrame:(CGRect)frame

    {

        self = [super initWithFrame:frame];

        if (self)

        {

            // Initialization code

            self.activeImage = [UIImage imageNamed:@"sy_da_sdd.png"];//(当前页面所表示图片)

            self.inactiveImage = [UIImage imageNamed:@"sy_dt_sdde.png"];//(当前界面外的图片)

        }

        self.userInteractionEnabled=NO;

        return self;

    }

    - (void)updateDots

    {

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

        {

            if ([[[UIDevice currentDevice] systemVersion] floatValue]>= 7.0)

            {

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

                if (i == self.currentPage)

                {

                    dot.layer.backgroundColor=[UIColor clearColor].CGColor;

                    dot.layer.contents=(id)self.activeImage.CGImage;

                }

                else

                {

                    dot.layer.backgroundColor=[UIColor clearColor].CGColor;

                    dot.layer.contents=(id)self.inactiveImage.CGImage;

                 }

            }

            else

            {

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

                if (i == self.currentPage)

                {

                    dot.image = self.activeImage;

                }

                else

                {

                    dot.image = self.inactiveImage;

                }

            }

        }

    }

    - (void)setCurrentPage:(NSInteger)currentPage

    {

        [super setCurrentPage:currentPage];

        [self updateDots];

    }

    @end

  • 相关阅读:
    linq to sql 扩展方法
    跨线程的安全更新控件
    WinForm程序启动控制台窗口Console
    Winfrom巧用Using设置鼠标为WaitCursor
    在创建窗口句柄之前,不能在控件上调用 Invoke 或 BeginInvoke。
    基于Token的身份验证——JWT(转)
    jwt算法
    session问题总既然(深入理解)&Token问题理解&sso单点登陆理解实现
    1.spring boot要求最低jdk1.8,平安默认1.6问题,-》安装JDK1.8 2.maven 3.3.3要求最低jdk1.7->安装jdk 1.8
    批量插入删除
  • 原文地址:https://www.cnblogs.com/anyezhuixing/p/3944272.html
Copyright © 2011-2022 走看看