在IKImageBrowserCell中设置CALayer动画

时间:2010-10-13 23:01:57

标签: objective-c cocoa core-animation calayer ikimagebrowserview

我有一个带有IKImageBrowserCell子类的自定义图像浏览器视图,其中我添加了一个我希望在某些场合制作动画的小标记图形。

它有点像Panic的Coda Sites视图中的“i”标志(我猜测它是一个定制的ImageBrowserView对吧?)。在Coda的网站视图中,如果你将鼠标悬停在一个项目上,那么当你徘徊时,我就会消失并消失。

尝试重现这种效果,我正在努力。

我已经将IKImageBrowserCell子类化了,我在layerForType期间保存了对符号图层的引用。

然后当鼠标移过时我试图改变不透明度,但它没有改变。

悬停检测代码本身有效,我从NSLogs知道,但CALayer的隐式动画(signLayer.opacity = 1.0)从未开始。

有什么建议吗?

也许我错过了一些东西(有点像Core Animation的新手)。

由于

1 个答案:

答案 0 :(得分:0)

试试这个:

CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"opacity"];
animation.duration = 0.8s //the duration of the fade
animation.repeatCount = 0;
animation.autoreverses = NO;
animation.fromValue = [NSNumber numberWithFloat:1.0];
animation.toValue = [NSNumber numberWithFloat:0.0];
[myLayer addAnimation:animation forKey@"fadeOut"];

要淡化图层,请使用twoValue切换fromValue并重命名该键。

希望这有帮助。