CATransition如何剪辑到UIView的界限?

时间:2010-07-09 04:44:38

标签: iphone animation uiview catransition

我正在使用CATransition来滑动UIView的子视图。但问题是CATransition总是出现在整个屏幕上。它看起来像一团糟,因为我在窗口中有另一个UI元素,在转换时会重叠。如何通过UIView框架限制过渡帧?我试图将我的UIView的clipToBounds设置为YES。实际上它没有帮助。

1 个答案:

答案 0 :(得分:1)

我对这一点并不十分确定,但我认为你错误地将CATransition应用于整个屏幕。它适用于您添加动画的视图。

我们的想法是将转换应用于您实际想要转换的视图的。所以说你有以下结构。

  • 的UIViewController
    • view(UIViewController的主视图)
      • 查看您正在转型

您需要做的是在主UIViewController视图和实际目标视图之间添加“保持”或“容器”视图,使其看起来像这样:

  • 的UIViewController
    • view(UIViewController的主视图)
      • “container”视图< - 在此处应用转换
        • 查看您正在转型

将过渡应用到容器视图,如果需要,您将能够剪切它。如果它仍然超出范围,则尝试在包含视图或图层的masksToBounds属性上启用clipsToBounds

相关问题