我想按时间顺序一个接一个地添加多个CALayer
。我可以使用此链接Here将一层添加到视频文件中。现在我的问题是我如何向视频文件添加多个CALayer
。
提前致谢..
最佳答案
最直接的方法是将几层捆绑成单层。您将必须添加说明以在某个时候添加它,并在不需要时将其删除。像这样:
CABasicAnimation *fadeAnimation = [CABasicAnimation animationWithKeyPath:@"opacity"];
fadeAnimation.fromValue = [NSNumber numberWithFloat:(float)!fadeIsIn];
fadeAnimation.toValue = [NSNumber numberWithFloat:(float)fadeIsIn];
fadeAnimation.additive = NO;
fadeAnimation.removedOnCompletion = NO;
fadeAnimation.beginTime = atTime;
fadeAnimation.duration = duration;
fadeAnimation.fillMode = kCAFillModeBoth;
[layer addAnimation:fadeAnimation forKey:nil];
在此示例中,您可以进行淡入/淡出(1.0开始和0.0基本上是淡出)。 atTime是您要开始显示/移除该图层的时间,而duration是淡入淡出的持续时间(因此,如果某个小数值0.0001(从未尝试过0.0(为什么?)),它将不会淡入淡出,而只会进行平淡裁剪)。图层是您希望在某个时候显示/删除的CALayer。您显然需要两次调用此方法,一次用于淡入,第二次用于淡出。让我知道您是否有更好的解决方案! :)
ps只是注意到这是一个非常老的问题!