zoukankan      html  css  js  c++  java
  • iOS:分页控件UIPageControl的使用

    分页控件:UIPageControl

     
    功能:通常搭配滚动视图一起使用,设置pagingEnabled=YES即可,UIScrollView会被分割成多个独立页面,用户的滚动体验则变成了页面翻转,一般会配合UIPageControl增强分页效果,显示滚动视图的页码。

    属性:

    @property(nonatomic) NSInteger numberOfPages;  //总页数

    @property(nonatomic) NSInteger currentPage;      //当前的页码

    @property(nonatomic) BOOL hidesForSinglePage;  //当只有一页时,是否要隐藏   

    @property(nonatomic) BOOL defersCurrentPageDisplay;   //是否推迟显示当前页码

    @property(nonatomic,retain) UIColor *pageIndicatorTintColor; //设置控制器页码点的颜色

    @property(nonatomic,retain) UIColor *currentPageIndicatorTintColor; //设置控制器当前所在页码点的颜色

     

    方法:

    - (void)updateCurrentPageDisplay;     //更新当前页码             

    - (CGSize)sizeForNumberOfPages:(NSInteger)pageCount;  //一定数量页码的size大小

     

    监听UIPageControl的页面改变:

    // 添加监听器

    [pageControl addTarget:self action:@selector(pageChange:) 

    forControlEvents:UIControlEventValueChanged];

    // 监听方法

    - (void)pageChange:(UIPageControl *)pageControl 

    {  

    }

    具体举例如下:

      在AppDelegate类的- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {}方法中添加添加代码为:

    //1.初始化窗体和设置背景颜色

        //初始化window实例
        self.window = [[UIWindow alloc]initWithFrame:[[UIScreen mainScreen] bounds]];
        
        //设置背景色
        self.window.backgroundColor = [UIColor whiteColor];

    //2.初始化分页控制器实例

        //创建分页控制器实例
        UIPageControl *pageControl = [[UIPageControl alloc]initWithFrame:CGRectMake(0, 100, 375, 40)];

    //3.设置总分页数

        //设置总页码数
        pageControl.numberOfPages = 9;

    //4.设置当前页码数

        //设置当前页码
        pageControl.currentPage = 2;

    //5.设置所有页码点颜色

        //设置所有页码点的颜色(未选中)
        pageControl.pageIndicatorTintColor = [UIColor redColor];

    //6.设置当前页码点颜色

        //设置当前页码点颜色(选中)
        pageControl.currentPageIndicatorTintColor = [UIColor greenColor];

    //7.设置分页控件背景颜色

        //设置该实例背景颜色
        pageControl.backgroundColor = [UIColor grayColor];

    //8.添加分控控件事件

        //添加分页控件事件
        [pageControl addTarget:self action:@selector(pageControlChanged:) forControlEvents:UIControlEventValueChanged];

    //9.将分页控件添加到窗体中

        //添加控件到窗体中
        [self.window addSubview:pageControl];

    //10.在屏幕显示对象

        //发送的用户的请求,使用对象的主窗口显示到屏幕的最前端
        [self.window makeKeyAndVisible];

    分页控件事件触发:

    #pragma mark -pageControlChanged:显示当前页数

    -(void)pageControlChanged:(UIPageControl*)sender
    {
        NSLog(@"currentPage:%ld",sender.currentPage);
    }

    演示结果如下:

    没有触发分页控件事件时,页码点截图:

    触发分页控件事件时,页码点截图和输出结果为:

    2015-09-30 20:51:57.848 分页控件UIPageControl[4403:251770] currentPage:3
  • 相关阅读:
    在windows上编译MatConvNet
    数学趣题:农夫卖鸡
    CVPR 2013
    Ubuntu12.04安装配置Theano
    CenOS下安装Eclipse并配置PyDev
    Leangoo共享思维导图如何导入导出Xmind文件?
    共享思维导图,协作型思维导图,Leangoo
    不能把开发团队对迭代目标的承诺视为保证-Scrum中文网
    leangoo项目管理软件卡片引用优化及卡片ID 优化
    Leangoo敏捷项目管理软件更新卡片定位
  • 原文地址:https://www.cnblogs.com/XYQ-208910/p/4850281.html
Copyright © 2011-2022 走看看