2017-02-10 8 views
2

私はUIPageViewControllerを実装した後の私のストーリーボードで、異なる内容のView Controllerを表示するためにtowボタン(nextとpreve)でUIPageViewControllerを使いたいと思います。異なるViewControllersを持つUIPageViewController

私の質問は、私はこれらのビューコントローラをUIPageViewControllerの中に置くことができますか?スウィフトで

page.xib

答えて

2

回答:

があなたのUIPageVCインスタンスのあなたのviewDidLoadで、次のようになど、あなたの最初のVC、方向を定義するためにsetViewControllersメソッドを呼び出します。

override func viewDidLoad() { 
    super.viewDidLoad() 
    dataSource = self 
    let vc = storyboard!.instantiateViewController(withIdentifier: "whatever storyboard id your first VC is") 
    setViewControllers([vc], 
         direction: .forward, 
         animated: false, 
         completion: nil) 
} 

UIPageViewControllerDataSourceプロトコルメソッドを使用して、現在のviewControllerの前後にあるページと、コントローラの数とインデックスを表示するページを定義します。

func pageViewController(_ pageViewController: UIPageViewController, 
         viewControllerBefore viewController: UIViewController) -> UIViewController? 
{ 
    // Return some VC based on what the current viewController param is. 
} 

func pageViewController(_ pageViewController: UIPageViewController, 
         viewControllerAfter viewController: UIViewController) -> UIViewController? 
{ 
    // Return some VC based on what the current viewController param is. 
} 

func presentationCount(for pageViewController: UIPageViewController) -> Int { 
    return 7 
} 

func presentationIndex(for pageViewController: UIPageViewController) -> Int { 
    return viewControllers!.index(of: viewControllers!.first!)! 
} 
関連する問題