2017-03-17 3 views
0

あなたのための質問があります。私のプログラムでは、私はthis.NavigationController.AddChildViewController(pvController)を経由して、子ビューコントローラとして追加され、私はそれがYに滑り落ちるように私のビューへの移行を追加したView.AddSubview(pvController.View)InsertSubviewBelowが正しく動作しません。他のビューの上に表示されます。

を経由して私の現在のビューのサブビューとして追加されUIPageViewControllerを持っています250個の単位で軸:

UIView.Transition(this.View, 1.5, UIViewAnimationOptions.CurveEaseOut,() => 
      { 
       this.View.Frame = animateTo; 
      }, null); 

私は別のUIViewが、私は私の遷移を引き起こす際に、他のビューが所定の位置にスライドするように思われることUIPageViewController.Viewように後ろになりたいです。問題は、私は無駄にこれを行うには非常に多くの様々な方法を試したことです。同じ事のすべての結果彼ら

 View.SendSubviewToBack(behind); 
     pvController.View.InsertSubviewBelow(behind, pvController.View); 
     pvController.View.InsertSubviewAbove(behind, pvController.View); 
     pvController.View.SendSubviewToBack(behind); 

:UIViewのbehindが表示されているが上記pvController.View

誰もが任意のアイデアを持ってここに私はこれまでのところ、これを行うために試した方法の全てです?助けが大いにありがとう!

答えて

0

問題の解決策ではありませんが、トラブルシューティングに役立つ情報があります。

XCodeでは、debug your view hierarchyにすることができます。これは、あなたの意見がどこにあるかを知るのに役立ちます。あなたのアプリがブレークポイントである一方、

がこのウィンドウに、この機能にアクセスクリックします。その後、Xcodeで、次が表示されます

enter image description here

:うまくいけば

enter image description here

、これは、ビューの位置を把握するのに役立ちます。

+0

私はこれまでになかったことは間違いなく、ほんの一部の知識を持っていることに感謝します。しかし、私はちょうど私が探していたことをする方法を考え出した。ありがとう! –

0

ただ修正しました!私が思っていたよりも少しシンプルでした。しかし、私はまだInsertSubviewBelowがうまくいかなかったのだろうと思っています。

View.AddSubview(pvController.View); 
View.AddSubview(behind); 
View.SendSubviewToBack(behind); 

とビューがロードされたときに、ViewDidLoad()後、behindは確かに後ろのpvController.Viewた:

は、ここで私は私の所望の効果を達成するために何をしたかであります!

関連する問題