我有一个小视图和一个大视图,并希望在它们之间翻转动画,作为选择切换(在另一个按钮上)。我正在使用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){}];

最佳答案

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

关于ios - UIView transitionFromView动画翻转具有不同的 View 大小?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7381025/

10-10 21:31
查看更多