6

我通過使用UIPageViewController來實現應用程序中的水平滾動,該UIPageViewController將導航屬性設置爲「水平」並將「轉換樣式」設置爲「滾動」。 一切工作正常,我可以添加一些正確呈現的子視圖。我也想利用內置的UIPageControl該UIPageViewController有通過使用這兩種方法:是否有任何方法可以操縱父視圖控制器,以便子視圖將位於UIPageControl下方?

-(NSInteger)presentationIndexForPageViewController:(UIPageViewController *)pageViewController 
-(NSInteger)presentationCountForPageViewController:(UIPageViewController *)pageViewController 

這實際上顯示我正在尋找:指示顯示其子視圖點。 但是,如圖所示,UIPageControl設置在父視圖控制器(UIPageViewController)的底部。你可以想象,這不是我想要呈現我的UIPageControl的方式。有什麼辦法可以操縱父視圖控制器,以便子視圖將在UIPageControl下面?或者還有其他好的做法來達到這個目的嗎? 我知道我可以使用滾動視圖,而不是一個UIPageViewController的實現水平滾動,但我這似乎更有效。

http://i48.tinypic.com/2hd03ev.png

對於清晰度:灰色的部分是我的子視圖,紅色的部分是,我使用的墊層UIPageViewController。

在此先感謝您的任何答案!

回答

4

一種解決方案是創建和管理自己的UIPageControl,而不是使用內置的一個。

如果您創建了自己的幾個選項,可以在您想要的深度顯示它,但是我建議在UIPageViewController的頂部創建一個覆蓋圖並添加UIPageControl,以便兩者完全獨立。你也可以將頁面控件放在任何你想要的位置。

要跟蹤頁面的變化,實施UIPageViewControllerUIPageViewControllerDelegate,並使用setCurrentPagesetNumberOfPages轉發視圖控制器更改您的UIPageControl

相關問題