0
我想在一个视图控制器在屏幕幻灯片,然后在某个时候滑出并回到呈现的ViewController。 我用这个代码从我MainViewController启动模式,然后将其关闭。dismissViewControllerAnimated不是动画的ViewController
为什么解雇滑动动画不工作?
// Present a React Component sliding from the right on top of current ViewController
+ (void)presentSlidingFromRight:(UIViewController*)presented onViewController:(UIViewController*)presenterVC {
CATransition *transition = [[CATransition alloc] init];
transition.duration = 1;
transition.type = kCATransitionPush;
transition.subtype = kCATransitionFromRight;
[presenterVC.view.window.layer addAnimation:transition forKey:kCATransition];
[presenterVC presentViewController:presented animated:NO completion:nil];
}
// Dismiss a React Component sliding to the right
+ (void)dismissSlidingToRight:(UIViewController*)presented onViewController:(UIViewController*)presenterVC {
CATransition *transition = [[CATransition alloc] init];
transition.duration = 3;
transition.type = kCATransitionPush;
transition.subtype = kCATransitionFromLeft;
[presenterVC.view.window.layer addAnimation:transition forKey:kCATransition];
[presenterVC dismissViewControllerAnimated:NO completion:nil];
}
你的静态功能,当我把它设置为YES,模态动画但是默认的动画(滑动底部快)。为什么忽略我的转换? – Herno
@赫尔诺在解雇功能,你可以尝试改变过渡类型,使用淡出而不是推: 'transition.type = kCATransitionFade;' – zero
感谢您的帮助。所以如果我在我的MainView控制器中运行代码,它运行良好。但是,因为我有这个静态类,我不知道它为什么不动画。我保持_presented,并提出控制器在varaibles供以后使用。这是相同的代码,但是当我在另一个类,是不是MainViewController使用它,它不工作。这有多奇怪? – Herno