Here is the version of Objective-C. Create a new class (2 files):
(1) BasePageViewController.h extends UIPageViewController
(2) BasePageViewController.m with viewDidLayoutSubviews overriding
#import "BasePageViewController.h" @implementation BasePageViewController - (void) viewDidLayoutSubviews { [super viewDidLayoutSubviews]; UIScrollView *scrollView = nil; UIPageControl *pageControl = nil; for(UIView *view in self.view.subviews) { if([view isKindOfClass:[UIScrollView class]]) { scrollView = (UIScrollView *)view; }else if([view isKindOfClass:[UIPageControl class]]) { pageControl = (UIPageControl *)view; } } if(scrollView != nil && pageControl!=nil) { scrollView.frame = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height); [self.view bringSubviewToFront:pageControl]; } } @end
source share