我正在使用CATransition来滑动UIView的子视图。但问题是CATransition总是出现在整个屏幕上。它看起来像一团糟,因为我在窗口中有另一个UI元素,在转换时会重叠。如何通过UIView框架限制过渡帧?我试图将我的UIView的clipToBounds设置为YES。实际上它没有帮助。
答案 0 :(得分:1)
我对这一点并不十分确定,但我认为你错误地将CATransition应用于整个屏幕。它适用于您添加动画的视图。
我们的想法是将转换应用于您实际想要转换的视图的父。所以说你有以下结构。
您需要做的是在主UIViewController视图和实际目标视图之间添加“保持”或“容器”视图,使其看起来像这样:
将过渡应用到容器视图,如果需要,您将能够剪切它。如果它仍然超出范围,则尝试在包含视图或图层的masksToBounds属性上启用clipsToBounds