自定义视图控制器转换动画时间?

问题描述:

有没有一种方法可以轻松地更改视图控制器之间的过渡动​​画的持续时间?例如,如果我调用dismissModalViewControllerAnimated:YES,我是否也可以选择控制转换发生的时间?自定义视图控制器转换动画时间?

不是。你可以,不过,告诉dismissModalViewControllerAnimated不要动画,然后使用transitionWithView,例如动画自己,

[UIView transitionWithView:self.view.superview 
        duration:2.0 
        options:UIViewAnimationOptionTransitionFlipFromBottom 
       animations:^{ 
        [self dismissModalViewControllerAnimated:NO]; 
       } 
       completion:nil]; 

显然,随便用durationoptions工作最适合你。

+0

这可以在整个屏幕上工作,而不仅仅是一个uview? – zakdances 2012-07-21 06:26:06

+0

试一试。我想你会发现它为你做好了这份工作。 – Rob 2012-07-21 13:23:43

+0

但是,如果您执行dismissModalViewControllerAnimated:NO,那么即使在transitionWithView完成动画之前,viewDidAppear也会立即在以下视图控制器上调用。换句话说,时间将会关闭。 – zakdances 2012-07-22 00:09:41