【发布时间】:2013-10-06 22:11:10
【问题描述】:
我有一个带有图像的CALayer,它有几个子层。我想动画它没有内容(没有图像),但继续显示子层。此代码不起作用:
CABasicAnimation *backgroundOut = [CABasicAnimation animationWithKeyPath:@"contents"];
backgroundOut.toValue = [NSNull null];
backgroundOut.fillMode = kCAFillModeForwards;
backgroundOut.removedOnCompletion = NO;
backgroundOut.duration = 3.0;
[_backgroundLayer addAnimation:backgroundOut forKey:@"contents"];
这是我可以让它工作的唯一方法:
backgroundOut.toValue = (__bridge id)([UIImage imageNamed:@"blankImage"].CGImage);
请注意,我不想弄乱不透明度或其他任何东西,因为该图层具有仍然需要可见的子图层。
为空内容设置动画的正确方法是什么?
【问题讨论】:
-
你试过 backgroundOut.toValue = (id)nil 吗?
-
是的,我尝试将 toValue 设置为 nil。它不起作用,因为这实际上意味着我们的当前值。
标签: uiimage core-animation calayer cabasicanimation