2016-09-21 6 views
-1

内部のスクロール方向を変更し、私はこのチュートリアルを使用してスワイプナビゲーションを作成しました:https://www.youtube.com/watch?v=3jAlg5BnYUUはscrollView

私は65個のXIBファイルを持っているので、私は本を作成しています。私のコードの例は次のとおりです。

let Pg1 = ViewControllerPg1(nibName: "ViewControllerPg1", bundle: nil) 

    self.addChildViewController(Pg1) 
    self.scrollView.addSubview(Pg1.view) 
    Pg1.didMoveToParentViewController(self) 

    let Pg2 = ViewControllerPg2(nibName: "ViewControllerPg2", bundle:nil) 

    var frame1 = Pg2.view.frame 
    frame1.origin.x = self.view.frame.size.width 
    Pg2.view.frame = frame1 

    self.addChildViewController(Pg2) 
    self.scrollView.addSubview(Pg2.view) 
    Pg2.didMoveToParentViewController(self) 

    let Pg3 = ViewControllerPg3(nibName: "ViewControllerPg3", bundle:nil) 

    var frame2 = Pg3.view.frame 
    frame2.origin.x = self.view.frame.size.width * 2 
    Pg3.view.frame = frame2 

    self.addChildViewController(Pg3) 
    self.scrollView.addSubview(Pg3.view) 
    Pg3.didMoveToParentViewController(self) 

私は65に至るまで、これらの変数を持っているし、私が持っている:

self.scrollView.contentSize = CGSizeMake(self.view.frame.size.width * 65, 
self.view.frame.size.height - 66); 

すべてがscrollView

I二つの問題内側に、 ページです最初から最後の右から左に行く。しかし、私はそれを左から右にする必要があります。私はボタンを使用して "ページ"の間を移動する必要がある、私はすでにこれをやってみた:showViewControllerpushViewControllerどれもうまくいきませんでした。

ありがとうございました

答えて

0

なぜ非常に多くのVC変数を作成していますか?それぞれのクラスは本当に区別されますか?おそらく、あなたがしようとしているすべてのものに対して1つのVCを再利用し、そのVCの別々のインスタンスに依存してコンテンツを異なる方法でレンダリングすることができます。

しかし、手動でページscrollViewのために、あなたがこれを達成するためにUIScrollViewののscrollRectToVisible方法を使用することができ、あなたの質問に答えるために:

https://developer.apple.com/reference/uikit/uiscrollview/1619439-scrollrecttovisible

幸運を!

+0

こんにちは、お返事ありがとうございますが、私はあなたに答えることができれば、私に多くの助けになるという別の質問があります。私のCGRect変数はすべて特定のViewControllerにあり、ボタンは別のものにあります。どのように私はそれらの機能で使用することができますか? – Justsomecode

+0

これを達成する方法はたくさんあります。 1つは、すべてのデータを持つVCをサブクラス化して、子がアクセスできるようにすることです。おそらく、データソースの種類のオブジェクトで簡単にアクセスできるように、データを設計する方がよいでしょう。私はあなたのコード構造を本当に理解していませんが、そのデータにアクセスするのは簡単ではありません。 – Lizza

+0

こんにちは!まずは、あまりにも多くのことを助けてくれてありがとう。第二に、ViewControllerをサブクラス化する方法がわからない場合は、私は非常に感謝する良いチュートリアルを指すことができます。私は無駄にオンラインで検索しようとしました...もう一度ありがとう – Justsomecode