我正在实现一个简单的图库视图控制器,其中应用程序显示用户可以滚动浏览的全范围图像的小范围。我使用UIPageViewController,我认为,如果我实现了正确的数据源功能,应该自动显示页面控制指示器。但是我仍然看不到任何指标。Swift/iOS8:为什么没有显示页面控制指示符?
在我的主要GalleryViewController
:
class GalleryViewController: UIViewController, UIPageViewControllerDataSource, UIPageViewControllerDelegate {
var pageController: UIPageViewController?
var pageContent = NSArray()
override func viewDidLoad() {
super.viewDidLoad()
.... some code to load images into the pageContent array ....
pageController = UIPageViewController(transitionStyle:.Scroll, navigationOrientation:.Horizontal,options:nil)
pageController?.delegate = self
pageController?.dataSource = self
... some more standard code to add the page controller to self.view etc.
var pageControl = UIPageControl.appearance()
pageControl.pageIndicatorTintColor = UIColor.lightGray()
pageControl.currentPageIndicatorTintColor = UIColor.whiteColor()
pageControl.backgroundColor = UIColor.blackColor()
pageController!.didMoveToParentViewController(self)
}
func viewControllerAtIndex(index:Int) -> ContentViewController? {
....
}
我已经实现了两个强制性协议方法viewControllerBeforeViewController和viewControllerAfterController以及两个必要的那些寻呼,presentationCountForPagesViewController和presentationIndexForPageViewController。
我的ContentViewController
有一个UIImageView
填充整个屏幕。不过,即使当我从屏幕底部减小尺寸时,我也看不到任何页面指示灯。 我在这里错过了什么吗?如果我没有提供足够的信息,请告诉我。我一直在尝试重写一个我在5年前编写的Objective-C中的旧应用程序 - 完全在Swift for iOS8中,Xcode等发生了很大变化,令人困惑。 谢谢!
我已经完成了 - 仍然没有显示。 –
我把一个println语句调试到我的presentationCountForPageViewController方法中,它永远不会被调用。这可能是为什么我的页面计数器点没有显示 - 但为什么不被调用?是否使用UIPageViewController自动创建页面计数器? –
你永远不会添加pageController.view作为self.view的子视图。 – jrc