0

我已经创建了 UIView 的子类,并且正在尝试为该子类中的属性设置动画。

该属性在 drawRect 中使用,我希望 drawRect 在动画的每个步骤中执行。所以我把它变成了这样的属性设置器:

-(void) setFill:(float) f
{
    fill = f;
    [self setNeedsDisplay];
}

但是当我运行动画块时,属性会立即设置。我究竟做错了什么?

动画调用如下所示:

[UIView animateWithDuration:3.0f
                          delay:0.0f
                        options: UIViewAnimationOptionCurveLinear
                     animations: ^{ circle1.fill = 50; }
                     completion: ^(BOOL finished) { }];

这是为 UIView 子类设置动画的正确方法吗?

4

1 回答 1

0

只有 UIView 的某些属性是可动画的(框架、中心、变换...)。您必须编写自己的动画来使用 NSTimer 为您的自定义属性设置动画。

于 2012-05-17T16:34:23.123 回答