繁体   English   中英

iphone:为CALayer子层设置动画

[英]iphone : animating a CALayer sublayer

我正在尝试使用以下代码为UIView图层的子图层设置动画:

CALayer *sublayer = [[CALayer alloc] init];
[sublayer setFrame:myRect]; // myRect is a portion of the view's frame rectangle
[self.layer addSublayer:sublayer];

然后在我的drawRect:方法中:

CABasicAnimation *anim = [CABasicAnimation animationWithKeyPath:@"opacity"];
anim.duration = 1.0f;
anim.fromValue = [NSNumber numberWithFloat:1];
anim.toValue = [NSNumber numberWithFloat:.5];
anim.delegate = self;
[sublayer addAnimation:anim forKey:@"animateOpacity"];

自代码[self.layer addAnimation:anim forKey:@"animateOpacity"];我不理解为什么我的子图层不设置动画[self.layer addAnimation:anim forKey:@"animateOpacity"]; 为视图的主层设置动画。

谢谢。

不要在drawRect:方法中添加CAAnimation 当需要重绘视图内容时(可能在任何时候),CoreAnimation都会调用它。 相反,应在将视图添加到其父级之后添加动画。

您无法为frame属性设置动画。 设置边界或位置的动画。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM