UIView transitionFromView使用不同视图大小的动画翻转?

时间:2011-09-11 20:28:45

标签: ios uiview uikit uiviewanimation uiviewanimationtransition

我有一个小视图和一个大视图,并希望在它们之间翻转动画,作为选择切换(在不同的按钮上)。我正在使用UIView转换块方法,并且翻转实际上正确发生。

但是,在过渡期间,较大的视图会被裁剪并缩小到与较小的视图完全相同的大小。一旦完成它再次回到完整尺寸,但有一个混蛋。因此,虽然胜利如此接近,但过去5个小时我一直在玩不同的排列和组合,平稳过渡没有运气。

是否真的无法在两个不同大小的视图之间转换翻转?有人请帮忙!

我的一行过渡如下。 ivCategory是一个小视图,CGSize = (40.0f,48.0f)。 ivAvatar是一个大视图,CGSize = (124.0f,318.0f)。两者都是UIImageView次观看。两者都已存在,在同一父视图中作为子视图添加。

[UIView transitionFromView:self.ivCategory 
                    toView:self.ivAvatar
                  duration:1
                   options:UIViewAnimationOptionTransitionFlipFromRight|UIViewAnimationOptionShowHideTransitionViews
                completion:^(BOOL finished){}];

1 个答案:

答案 0 :(得分:0)

将较小的视图放入容器视图中,该视图与较大的视图大小相同。使用翻转动画切换较大视图和容器视图。您可以将opaque设置为NO并在容器视图上安装明确的背景颜色以使其根本不显示。但是,您必须在计划支持的最低端设备上进行测试,因为使用透明度动画非透明视图可能会很慢。 (我们只支持3G及以上版本。)