博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
IOS之pageControl
阅读量:4582 次
发布时间:2019-06-09

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

 用户点击页面控件,会触发UIControlEventValueChanged事件,并启动设置为控件动作的任何方法。可以通过调用currentPage查询控件的新值,并通过调整numberOfPages属性设置可用的页面数。

// 初始化页面控件 pageControl.numberOfPages = 9; pageControl.currentPage = 0; [pageControl addTarget:self action:@selector(pageTurn) forControlEvents:UIControlEventValueChanged];
复制代码
- (void)pageTurn:(UIPageControl *)pageControl {
CATransition *transition; int secondPage = [pageControl currentPage]; if((secondPage - currentPage)>0) transition = [self getAnimation:@"fromRight"]; else transition = [self getAnimation:@"fromLeft"]; UIImageView *newView = (UIImageView *)[[contentView subviews] objectAtIndex:0]; [newView setImage:[UIImage imageNamed:[NSString stringWithFormat:@"ipad_wallpaperd.jpg",secondPage+1]]]; [contentView exchangeSubviewAtIndex:0 withSubviewAtIndex:1]; [[contentView layer] addAnimation:transition forKey:@"transitionView Animation"]; currentPage = [pageControl currentPage]; }
复制代码

结合ScrollView后关于UIPageControl的页面设置算法:

// 在ScrollView的委托方法中 int index = fabs(scrollView.contentOffset.x) / scrollView.frame.size.width; pageControl.currentPage = index;

自定义之一:给UIPageControl控件添加背景

View Code

1 int pagesCount =5; 2 UIPageControl *pageControl = [[UIPageControl alloc] init]; 3 pageControl.center = CGPointMake(self.view.frame.size.width/2, self.view.frame.size.height-15); // 设置pageControl的位置 4 pageControl.numberOfPages = pagesCount; 5 pageControl.currentPage = 0; 6  7 [pageControl setBounds:CGRectMake(0,0,16*(pagesCount-1)+16,16)]; //页面控件上的圆点间距基本在16左右。 8 [pageControl.layer setCornerRadius:8]; // 圆角层 9 [pageControl.setBackgroundColor:[UIColor clorWithWhite:0.0 alpha:0.2]]; 10 [self.view addSubview:pageControl]; 这个效果我找了很久。自己实现过,造了轮子。

转载于:https://www.cnblogs.com/wcLT/p/4696841.html

你可能感兴趣的文章
Mysql5.6主从热备配置
查看>>
VS2010DebugView捕捉
查看>>
mfix中更改time dependent VTK filename的最大时间步数的容量
查看>>
Windows7安装 docker-compose的过程
查看>>
关于nodeJS多线程的支持,目前看来无法实现,讲解v8的一些东西
查看>>
php递归创建文件夹的两种方法
查看>>
6.新增事件
查看>>
|洛谷|二分|P1182 数列分段Section II
查看>>
少儿编程Scratch第四讲:射击游戏的制作,克隆的奥秘
查看>>
Oracle学习第七课-表连接及其应用
查看>>
Python基础篇【第十三篇】:面向对象
查看>>
bzoj 2465 小球
查看>>
String类
查看>>
NoSQL简介
查看>>
java_2018_Day5_变量的格式
查看>>
在C++中调用DLL中的函数
查看>>
leetcode 32. Longest Valid Parentheses
查看>>
OpenSSL创建私有CA
查看>>
CSS3画腾讯QQ图标 无图片和js参考
查看>>
C#使用Emit生成构造函数和属性
查看>>