根据核心动画文档,设置图层内容应触发隐式 0.25 动画,该动画将在新旧图像之间转换。我还看到很多地方人们都在询问如何删除这个隐式动画,但由于某种原因,当我在我的项目中尝试这个时,我得到了即时交换的图像。在文档中阅读了更多内容,我看到这段代码被剪断了:
- (id<CAAction>)actionForLayer:(CALayer *)theLayer
forKey:(NSString *)theKey {
CATransition *theAnimation=nil;
if ([theKey isEqualToString:@"contents"]) {
theAnimation = [[CATransition alloc] init];
theAnimation.duration = 1.0;
theAnimation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseIn];
theAnimation.type = kCATransitionPush;
theAnimation.subtype = kCATransitionFromRight;
}
return theAnimation;
}
这意味着“内容”不是隐含的动画。
我很想更好地理解这一点。