いろいろなやり方はあるみたいですが、UIViewControllerを複数作って切り替える方法。
AppDelegateのプロパティとして、現在のUIViewControllerを保持する
(最初のUIViewControllerはAppDelegateのapplicationメソッドの中で設定)
@property (strong, nonatomic) UIViewController *viewController;
次コードで新しいUIViewControllerと入れ替えて表示。(ここではvcが新しいUIViewController)
if (self.viewController != nil) { [self.viewController.view removeFromSuperview]; [self.viewController release]; } self.viewController = vc; [self.window addSubview:self.viewController.view];
開発時は、UIViewControllerのdeallocには、deallocが呼ばれたというデバッグログを表示させておく。
なぜか・・・って?最初、deallocが呼ばれないことがあって、苦労したからですね、はい。
後からいれて悩むよりは、最初に遷移作るときからdeallocを確認しておくほうが効率がよいです。