蓝懿ios 技术内容和心得分享 12.27

UIPageControll 是继承于UIControl的一个IOS系统UI控件,可以提供给开发者设计分页效果的功能。

初始化方法

UIPageControl * page = [[UIPageControl alloc]initWithFrame:CGRectMake(100, 100, 100, 100)];

设置控制器页数(默认为0)

@property(nonatomic) NSInteger numberOfPages;  

设置当前所在页码

@property(nonatomic) NSInteger currentPage;  

设置当总页数为1时,是否自动隐藏控制器

@property(nonatomic) BOOL hidesForSinglePage;  

设置是否延迟自动更新控制器的当前页码(默认为NO)

@property(nonatomic) BOOL defersCurrentPageDisplay;

注意:这个属性如果设置为YES,点击时并不会改变控制器显示的当前页码点,必须手动调用

- (void)updateCurrentPageDisplay; 

这个方法,才会更新。

更新控制器当前页码

- (void)updateCurrentPageDisplay; 

通过页数得到控制器大小

- (CGSize)sizeForNumberOfPages:(NSInteger)pageCount; 

这个属性用于页数会变化的情况下进行大小动态处理

设置控制器页码点得颜色

@property(nonatomic,retain) UIColor *pageIndicatorTintColor;

设置控制器当前所在页码点的颜色

@property(nonatomic,retain) UIColor *currentPageIndicatorTintColor;

@property (strong, nonatomic) IBOutlet UIPageControl *page;

@property (strong, nonatomic) IBOutlet UIScrollView *imageScrollView;然后在实现文件(.m)里添加 对page对象的 

@synthesize page;

@synthesize imageScrollView;实现page对象的自动存取器。改写viewDidLoad方法如下  (void)viewDidLoad

{

    [super viewDidLoad];

    //这里定义了滚动视图的大小,是否支持翻页,是否显示水平滚动标示,委托对象是哪个

    imageScrollView.contentSize = CGSizeMake(PAGENUM * 320.0f, imageScrollView.frame.size.height);

    imageScrollView.pagingEnabled = YES;

    imageScrollView.showsHorizontalScrollIndicator = NO;

    imageScrollView.delegate = self;

 

    //这里为滚动视图添加了子视图,为了能添加后续操作,我这里定义的子视图是按键UIButton

    for

(int

i = 0; i < PAGENUM; i++) {

        NSString * fileName = [NSString stringWithFormat:@"%d.jpg",i+1];

        UIButton *imageButton = [[UIButton alloc] initWithFrame:CGRectMake(i * 320.0f,  0.0f, 320.0f, 218.0f)];

        [imageButton setBackgroundImage:[UIImage imageNamed:fileName] forState:UIControlStateNormal];

        imageButton.tag = 900 + i;

        [imageScrollView addSubview:imageButton];

    }

 

    //定义PageController 设定总页数,当前页,定义当控件被用户操作时,要触发的动作。

    page.numberOfPages = PAGENUM;

    page.currentPage = 0;

    [page addTarget:self action:@selector(pageTurn:) forControlEvents:UIControlEventValueChanged];

 

    //使用NSTimer实现定时触发滚动控件滚动的动作。

    timeCount = 0;

    [NSTimer scheduledTimerWithTimeInterval:5 target:self selector:@selector(scrollTimer) userInfo:nil repeats:YES];

 

}增加两个翻页动画和自动翻页的函数 

//滚图的动画效果

-(void)pageTurn:(UIPageControl *)aPageControl{

    int

whichPage = aPageControl.currentPage;

    [UIView beginAnimations:nil context:NULL];

    [UIView setAnimationDuration:0.3f];

    [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];

    [imageScrollView setContentOffset:CGPointMake(320.0f * whichPage, 0.0f) animated:YES];

    [UIView commitAnimations];

}

 

//定时滚动

-(void)scrollTimer{

    timeCount ++;

    if

(timeCount == PAGENUM) {

        timeCount = 0;

    }

    [imageScrollView scrollRectToVisible:CGRectMake(timeCount * 320.0, 65.0, 320.0, 218.0) animated:YES];

}

学习ios  重要还是要理清楚思路  在做或者看老师代码的时候 自己多想想为什么  不要自己看着就抄       另外还是要推荐一下 蓝懿IOS这个培训机构  和刘国斌老师刘国斌老师还是很有名气的,听朋友说刘老师成立了蓝懿iOS,,老师讲课方式很独特,能够尽量让每个人都能弄明白,有的比较难懂的地方,如果有的地方还是不懂得话,老师会换个其它方法再讲解,这对于我们这些学习iOS的同学是非常好的,多种方式的讲解会理解得更全面,这个必须得给个赞,嘻嘻,还有就是这里的学习环境很好,很安静,可以很安心的学习,安静的环境是学习的基础,小班讲课,每个班20几个学生,学习氛围非常好,每天都学到9点多才离开教室,练习的时间很充裕,而且如果在练习的过程中有什么困难,随时可以向老师求助,不像其它机构,通过视频教学,有的甚至学完之后都看不到讲师本人,问点问题都不方便,这就是蓝懿与其它机构的区别,相信在刘国斌老师的细心指导下,每个蓝懿学员都能找到满意的工作,加油!

                                                                  写博客第七十八天;

                                                                              QQ:565803433

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值