ios - 使い方 - uiviewcontrollertransitioningdelegate




どのようにカスタムモーダルビューコントローラは、アニメーションを提示する? (2)

スウィフトバージョン

let viewController = YourViewController()
let transition = CATransition()
transition.duration = 0.5
transition.type = kCATransitionFade
transition.subtype = kCATransitionFromBottom
view.window!.layer.add(transition, forKey: kCATransition)
present(viewController, animated: false, completion: nil)

uiviewcontrollerのmodalTransitionStyleを設定する代わりに、CAAnimation(またはその他のもの)を追加したいと思います。 このコードはnavigationControllerでカスタムアニメーションを実行できます

CATransition* transition = [CATransition animation];
          transition.duration = 0.4;
          transition.type = kCATransitionFade;
          transition.subtype = kCATransitionFromBottom;
          [self.navigationController.view.layer addAnimation:transition forKey:kCATransition];
          [self.navigationController pushViewController:adjustViewController animated:NO];

モーダルビューコントローラに実装するにはどうしたらいいですか?


ウィンドウのレイヤーにトランジションを追加し、それを押すのではなくコントローラを提示するだけです。

     CATransition* transition = [CATransition animation];
     transition.duration = 1;
     transition.type = kCATransitionFade;
     transition.subtype = kCATransitionFromBottom;
     [self.view.window.layer addAnimation:transition forKey:kCATransition];
     [self presentViewController:adjustViewController animated:NO completion:nil];




modalviewcontroller