APEXPageControl 0.1.1

APEXPageControl 0.1.1

测试已测试
语言语言 SwiftSwift
许可 MIT
发布最后发布2017年4月
SwiftSwift 版本3.0
SPM支持 SPM

Joe Gesualdo 维护。



  • Joe Gesualdo

APEXPageControl

简单易用的 iOS 页面控制器

安装

pod 'APEXPageControl', '0.1.0'

使用

class ViewController: UIViewController {
  let carouselController: APEXCarouselController!

  override func viewDidLoad() {
    ...
    let controlCount = 4
    let controlWidth = 10
    let controlHeight = 10
    let controlSpacing = 5
    let pageControlView = UIView(frame: CGRect())
    pageControlView.frame.size.width = CGFloat(controlWidth)
    pageControlView.frame.size.height = CGFloat(controlHeight)
    pageControlView.backgroundColor = UIColor.lightGray

    self.pageControlController = APEXPageControlController(
      withView: pageControlView,
      count: controlCount,
      spacing: Float(controlSpacing),
      onSelectPageControl: { pageIndex in
      },
      onActivatePageControlView: { controlView in
        controlView.backgroundColor = UIColor.darkGray
        return controlView
      },
      onDeActivatePageControlView: {controlView in
        controlView.backgroundColor = UIColor.lightGray
        return controlView
      }
    )
    self.pageControlController.delegate = self
    self.pageControlController.selectAtIndex(self.currentPage)

    self.pageControlController.didMove(toParentViewController: self)
    self.pageControlController.selectAtIndex(0)

    ...
  }
}

请记得在滚动视图上添加约束或框架信息(宽度、高度、x、y)。

controlView?.translatesAutoresizingMaskIntoConstraints = false;
controlView?.frame.size.width = CGFloat((controlCount * controlWidth) + (controlSpacing * (controlCount - 1)))
let centerPoint = self.view.frame.size.width/2
let xOrigin = centerPoint - ((controlView?.frame.size.width)!/2)
controlView?.topAnchor.constraint(equalTo: self.view.topAnchor, constant: 50).isActive = true
controlView?.leftAnchor.constraint(equalTo: self.view.leftAnchor, constant: xOrigin).isActive = true
controlView?.heightAnchor.constraint(equalToConstant: CGFloat(controlHeight)).isActive = true