2016-04-05 13 views
-2

したがって、セグメント化されたコントロールを使用して、コントローラを表示するように切り替えることができます。 しかし、多くの場合、できるだけ早く私はスイッチとして、私はこのメッセージが表示されます。セグメント化されたコントロールで開始/終了の外観トランジションが不一致

/終了外観遷移

プラスを開始するアンバランスの呼び出しは、私はこれを取得した後に、時にはすべてが上のオブジェクトことが起こりますビューは消えます。

は、ここでは、コードです:

func segmentValueChanged(sender: AnyObject) { 


    if sender.selectedIndex == 0 { 



     let newController = controllers.newController1 
     let oldController = childViewControllers.last as UIViewController! 


     self.container.frame.size.height = newController.view.frame.height 


     oldController.willMoveToParentViewController(nil) 
     addChildViewController(newController) 


     transitionFromViewController(oldController, toViewController: newController, duration: 0.9, options: .CurveLinear, animations:{() -> Void in 
      // nothing needed here 


      }, completion: { (finished) -> Void in 

       oldController.removeFromParentViewController() 
       newController.didMoveToParentViewController(self) 


     }) 

    } else if sender.selectedIndex == 1 { 


     let newController = controllers.newController2 
     let oldController = childViewControllers.last as UIViewController! 

     oldController.willMoveToParentViewController(nil) 
     addChildViewController(newController) 





     transitionFromViewController(oldController, toViewController: newController, duration: 0.9, options: .CurveLinear, animations:{() -> Void in 
      // nothing needed here 

      }, completion: { (finished) -> Void in 

       oldController.removeFromParentViewController() 
       newController.didMoveToParentViewController(self) 


     }) 
    } 

} 

どのように私はこの問題を解決することができますか?

答えて

0

この行は後方です:

self.container.frame.size.height = newController.view.frame.height 

それはあなたが設定する必要がnewControllerのビューのフレームです!

また、には、newController.viewをインターフェイスに入力していません。だからこそあなたはインターフェースなしで終わるのです。

+0

ここでは、子ビューコントローラとそのビューをスワップする作業のダウンロード可能な例を示します。https://github.com/mattneub/Programming-iOS-Book-Examples/tree/16eccf4d1a6003b2bb4032d4bd9b1b0695846bd/bk2ch06p316containerController – matt

関連する問題