【发布时间】:2021-04-03 00:48:17
【问题描述】:
当我想在 iOS 应用程序的容器视图内创建视图之间的转换时遇到问题。我想创建一个动画,使我的第一个视图向左滑动,第二个从右侧滑动(例如在照片之间切换,导航控制器中的一种推送)。我创建了我的动画,但问题是我的子视图在到达容器视图的边框时并没有消失,而是在到达我的屏幕边缘时消失。
我使用了这个代码:
CATransition *transition = [CATransition animation];
transition.duration = animationTime;
transition.type = kCATransitionPush;
transition.subtype = transationSubtype;
[transition setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]];
transition.removedOnCompletion = YES;
[view.layer addAnimation:transition forKey:nil];
如图所示,红色方块从屏幕而不是从其容器中消失,绿色从屏幕边缘进入内部,而不是从容器视图边缘进入。我希望动画在到达容器视图边缘时结束。
我尝试了任何方法,但找不到有用的东西。
【问题讨论】:
标签: ios objective-c animation transition