4

我有一个带有 IKImageBrowserCell 子类的自定义图像浏览器视图,其中我添加了一个小标志图形,我想在某些情况下制作动画。

这有点像 Panic 的 Coda Sites 视图上的“i”符号(我猜这是自定义的 ImageBrowserView ......对吗?)。在 Coda 的站点视图中,如果您将鼠标悬停在一个项目上,小 i 会淡入并在您悬停时消失。

试图重现这种效果,我很挣扎。

我已经对 IKImageBrowserCell 进行了子类化,并且在 layerForType.. 期间保存了对标志层的引用。

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

悬停检测代码本身有效,我从 NSLogs 知道,但 CALayer (signLayer.opacity = 1.0) 的隐式动画永远不会启动。

有什么建议吗?

也许我错过了一些东西(对核心动画来说有点新)。

谢谢

4

1 回答 1

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 并重命名该键。

希望这可以帮助。

于 2010-10-21T21:03:31.187 回答