2015-04-30 48 views
2

我有一個PageViewController,我想更改UIPageControl位置(從屏幕的底部到頂部)。iOS UIPageControl更改位置

That`s我的代碼:

UIPageControl *pageControl = [UIPageControl appearance]; 
pageControl.pageIndicatorTintColor = [UIColor lightGrayColor]; 
pageControl.currentPageIndicatorTintColor = [UIColor blackColor]; 
pageControl.backgroundColor = [UIColor whiteColor]; 

它的工作原理,但這些點顯示在底部,我想向他們展示在上面。

I`ve嘗試這樣做:

pageControl.frame = CGRectMake(0, 0, 100, 37); 

UIPageControl *pageControl = [[UIPageControl alloc] initWithFrame:CGRectMake(0, 0, 198, 37)]; 

我也試過在Storyboard創建UIPageControl,在這種情況下,點顯示在頂部,但點不顯示當前頁面的位置。

編輯

Storyboard情況下,我更新currentPage這樣的:

- (PageContentViewController *)viewControllerAtIndex:(NSUInteger)index { 
if (([self.pageImages count] == 0) || (index >= [self.pageImages count])) { 
    return nil; 
} 

PageContentViewController *pageContentViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"PageContentViewController"]; 
pageContentViewController.pageIndex = index; 

self.pageControl.currentPage = index; 
return pageContentViewController; 
} 

index得到瘋了,從來沒有表現出真正的currentPage

任何想法?由於

+0

如果你已經在故事板中設置它,你是否設置'UIPageControl'的'currentPage'屬性? – Frankie

+0

@frankie看到我的編輯請 – Ale

+0

是否有另一種視圖模糊你的頁面控制? – Glorfindel

回答

0

你可以試試我做了什麼(在迅速的答案,但它非常相似的OBJ-C):

在您的視圖控制器

,處理您的分頁(具有UIPageViewControllerDatasource等的) 我放置在viewDidLoad中:

self.pageViewController.view.frame = CGRectMake(0, 30, self.view.frame.width, self.view.frame.size.height - 200) 

現在-200價值是最重要的,它更改爲任意值,你想,這樣的含量較高或較低,默認的PageControl會堅持到底

其不exac tly你想要什麼,但可能做這個工作