UIView在故事板中切换风景和肖像场景的动画?

时间:2013-10-31 13:06:33

标签: ios iphone core-animation uistoryboard

我正在尝试为我的视图控制器设计不同的布局。谷歌搜索后,我得到了来自SO的this回答。基本上,答案指示我设置2个场景,一个用于横向,一个用于纵向,当设备旋转时,隐藏一个并显示另一个。

我的问题是如果我想为旋转过程添加 sweet 动画怎么办?例如,由于我可以在不同的场景上设置相同的视图,我可以设置这些视图的运动路径并消失吗?或者,如果它更容易,我可以添加一些旋转和淡出动画吗?

我对Core Animation非常环保,所以详细解释对我来说非常有用。非常感谢提前!

1 个答案:

答案 0 :(得分:0)

这里有一些选择。您正在寻找的主要方法是:

- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation 
                                duration:(NSTimeInterval)duration;

- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation;

如果要在旋转发生时在屏幕周围移动元素,最好更改元素的帧而不是创建单独的视图文件。使用任何动画动画都需要在两者之间进行一些映射,我之前从未听说过这样的事情。同样,如果你只是改变帧,你可以基本上预先形成你想要的任何屏幕移动(对于视图和子视图)。

要进行淡入淡出,您可以在第一种方法中抛出动画块:

[UIView animateWithDuration:duration 
                     animations:^{
    // set alphas for old and new views here.
}];