Storyboardではカスタマイズしたセグウェイを利用することができます。
UINavigationControllerでフリップで画面を切り替えるセグウェイを作ってみます。
まず、UIStoryboardSegueを継承したFlipSegueクラスを作成します。
次に、FlipSegueクラスに以下のコードを追加します。
- (void)perform { UIViewController *sourceViewController = (UIViewController *)self.sourceViewController; UIViewController *destinationViewController = (UIViewController *)self.destinationViewController; [UIView transitionWithView:sourceViewController.navigationController.view duration:0.2 options:UIViewAnimationOptionTransitionFlipFromLeft animations:^{ [sourceViewController.navigationController pushViewController:destinationViewController animated:NO]; } completion:nil]; } |
ソースビューからデスティネーションビューにフリップアニメーションを行いつつ、Navigation Controllerでコントローラの切り替えをアニメーション無しで行っています。
そして、StoryboardでSegueをCustomに変更してFlipSegueを指定します。