测试已测试 | ✗ |
语言语言 | SwiftSwift |
许可证 | MIT |
发布最近发布 | 2016年9月 |
SPM支持 SPM | ✗ |
维护者 Alex Corlatti。
要运行示例项目,请克隆仓库,然后首先从 Example 目录运行 pod install
ACPaginatorViewController 通过 CocoaPods 提供。要安装它,只需将以下行添加到您的 Podfile
pod "ACPaginatorViewController"
您的 viewController 必须符合 ACPaginatorViewControllerDelegate
协议,因此必须实现以下三个变量
@IBOutlet weak var pageControl: UIPageControl?
@IBOutlet weak var containerView: UIView!
lazy var orderedViewControllers: [UIViewController] = {
guard let
firstVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewControllerWithIdentifier("First") as UIViewController?,
secondVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewControllerWithIdentifier("Second") as UIViewController?,
thirdVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewControllerWithIdentifier("Third") as UIViewController? else { return [] }
return [firstVC, secondVC]
}()
在您的 storyboard 中将一个 UIContainerView
连接到您的变量 containerView
,嵌入的 UIPageViewController
必须是 ACPaginatorViewController
,您还可以选择将一个 UIPageControl
连接到您的 pageControl
变量。
返回您的 viewController 文件,并在 prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?)
方法中您必须将有序视图数组传递给 navigator,并告诉它视图遵循其协议。您还可以指定从哪个索引开始显示视图。
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if let paginatorViewController = segue.destinationViewController as? ACPaginatorViewController {
paginatorViewController.orderedViewControllers = orderedViewControllers
paginatorViewController.paginationDelegate = self
paginatorViewController.currentViewControllerIndex = 0 // By default is 0, so you can set it only if you need to start from a different index
}
}
可选地,您可以实现这两个方法以在视图数量变化或页面翻转时执行某些操作。
func paginatorViewController(paginatorViewController: ACPaginatorViewController, didUpdatePageCount count: Int) {
// Do something
}
func paginatorViewController(paginatorViewController: ACPaginatorViewController, didUpdatePageIndex index: Int) {
// Do something
}
Alex Corlatti,[email protected]
ACPaginatorViewController 在 MIT 许可下可用。有关更多信息,请参阅 LICENSE 文件。