iOS开发实战:从零基础到App Store上架
上QQ阅读APP看书,第一时间看更新

2.7 分页控制器——UIPageControl

分页视图也是一种十分流行的界面设计模式,使用的场景也十分多,例如新手引导页和广告轮播页等。UIPageControl是用于页码管理的一个UI控件,其表现模式是一行圆点,其中高亮的一个圆点标记当前所在的页码。使用Xcode创建一个名为UIPageControlTest的工程,在ViewController.m文件的viewDidLoad方法中添加如下代码:

        - (void)viewDidLoad {
            [super viewDidLoad];
            self.view.backgroundColor = [UIColor blackColor];
            UIPageControl * page = [[UIPageControl alloc]initWithFrame:CGRectMake
    (20, 100, 280, 30)];
            page.currentPageIndicatorTintColor = [UIColor redColor];
            [page addTarget:self action:@selector(changeNum:) forControlEvents:UI
    ControlEventValueChanged];
            page.numberOfPages = 8;
            [self.view addSubview:page];
        }

将当前视图的背景颜色设置为黑色便于进行效果的演示,UIPageControl 的currentPageIndicatorTintColor属性设置高亮页码点的颜色,numberOfPages属性设置页码数量,运行工程,效果如图2-27所示。

图2-27 UIPageControl

在单击UIPageControl 控件的左半边时,页码点会向左移动,单击UIPageControl 的右半边时,页码点会向右移动。在单击UIPageControl控件的同时也会触发交互方法,交互方法的实现如下所示,这里打印了当前的页码数(从0开始)。

        -(void)changeNum:(UIPageControl *)page{
            NSLog(@"%lu", page.currentPage);
        }