如何在ios中自定义推送和弹出动画时将视图传递给另一个控制器?

时间:2014-11-12 16:57:22

标签: ios animation uinavigationcontroller uianimation uiviewanimationtransition

我正在使用自定义转换,UIViewControllerAnimatedTransitioning。我已经能够为整个控制器制作推送和弹出动画。
但我需要另一件事:收缩一些标题视图并拉伸选定的表格单元格并向拉伸单元格添加一些文本。这将是我推动的控制器。

当我推送的控制器的一部分来自故事板而另一部分来自之前的控制器时,我怎样才能实现这一点?

找不到任何相关教程。只有如何为整个控制器制作动画。

UPD:
我已经看到了这个答案:https://stackoverflow.com/a/23580502/1400119但它对我帮助不大。

UPD2:
终于实现了目标。这里有博客帖子和回购的链接给了我很多帮助,也许他们也会帮助别人:
UINavigationControllerDelegate apple doc
UIViewControllerContextTransitioning apple doc

How to animate image in tableview to extend and open another view controller simultaneously?
Navigation controller custom transition animation

http://captechconsulting.com/blog/tyler-tillage/ios-7-tutorial-series-custom-navigation-transitions-more http://dativestudios.com/blog/2013/09/29/interactive-transitions/
http://www.objc.io/issue-12/custom-container-view-controller-transitions.html

https://github.com/mariohahn/MHVideoPhotoGallery

1 个答案:

答案 0 :(得分:1)

在表格单元格上使用动画。 就像我在以下示例中为集合视图所做的那样。

 [UIView animateWithDuration:.1 delay:0.0 options:UIViewAnimationOptionCurveLinear animations:^{
            [_collectionView setAlpha:1];
        }
        completion:^(BOOL finished) {
            [UIView animateWithDuration:.5 delay:0.0 options:UIViewAnimationOptionCurveEaseIn animations:^{
                _collectionView.center = CGPointMake(160, 528);

            }
            completion:^(BOOL finished) {
            }];
        }];