继承从:UIControl : UIView : UIResponder : NSObject

符合:NSCoding (UIView)  NSObject (NSObject)

框架:/System/Library/Frameworks/UIKit.framework

可用性:Available in iOS 2.0 and later.

声明在:UIPageControl.h

相关代码:UICatalog

概述:

你使用UIPageControl类创建和管理页面控制。一个页面控制是一个在控制的中心点的继承。每一个点表示一个当前视图。

可以看天气应用的例子。

当一个用户按页面控制来移动到下一个或者前一个页面,控制发送UIControlEventValueChanged事件来处理。代表然后评估currentPage属性来决定页面来显示。页面控制在每个方向只呈现一个页面。

注意:因为物理因素限制,不要超过20个页面。

任务

管理页面导航:

 

  •   currentPage  property
  •   numberOfPages  property
  •   hidesForSinglePage  property
  • 更新页面显示:
    •   defersCurrentPageDisplay  property
    • – updateCurrentPageDisplay
    • 调整大小:
    • – sizeForNumberOfPages:

    属性:

     currentPage

    当前页,被接收者显示作为一个白点。

    @property(nonatomic) NSInteger currentPage

    讨论:

    属性值是一个整数。0表示第一个页面。一个页面控制显示当前页作为一个白点。自爱可能范围之外的值要么是0,要么是numberOfPages-1

    可用性:

    可用在ios2.0或者以后的版本。

    defersCurrentPageDisplay

    • 一个bool值,控制是否显示当前页。
    • @property(nonatomic) BOOL defersCurrentPageDisplay
    • 讨论:
    • 设置这个属性作为YES,当用户点击控制到一个新的页面, 该类延缓更新页面指示器,直到它调用
    • updatePageIndicator。设置为NO(缺省)让页面指示器立即。
    • hidesForSinglePage

      一个bool值,控制是否页面指示器隐藏,当只有一个页面时。

      @property(nonatomic) BOOL hidesForSinglePage

      讨论:

      分配一个值YES来隐藏页面指示器,当只有一个页面时。缺省设置为NO

      numberOfPages

      接收者显示的页面数。(就是点数)

      @property(nonatomic) NSInteger numberOfPages

      讨论:

      显示的页面数。缺省是0

      实例方法:

      sizeForNumberOfPages:

      返回接受者的边界大小,与容纳被给的页面数有关。

      - (CGSize)sizeForNumberOfPages:(NSInteger)pageCount

      参数:

      pageCount

      页数,来适应接收者的边界。

      Return Value

      要求显示的页数点的最小size。

      讨论:

      子类,定制页面控制的外观,能用这个方法调整页面控制的大小,当页数改变。

      updateCurrentPageDisplay

      更新页面指示器到当前页,

      - (void)updateCurrentPageDisplay

      讨论:

      这个方法更新页面指示器,所以当前页满足从currentPage返回的值。该类忽略这个方法,如果

      defersPageIndicatorUpdate是NO。设置currentPage直接更新指示器立即。