1

如何在移动某些帧期间不为变换设置动画?我有一些动画块:

        [UIView animateWithDuration:.2 animations:^{
            self.center = [ViewController fitPointToNet:self.center];
            [self.delegate repaint];
        }];

并重绘调用paintInView 方法。此方法绘制一些图形(例如线)并旋转它们。我想让动画看起来像线移动到目标点 - 现在它移动和旋转。

- (void)paintInView:(UIView*)view 
{
//some drawing code   
line.transform = CGAffineTransformMakeRotation(M_PI);
//some drawing code
}

任何人都可以帮忙吗?

4

1 回答 1

1

您正在从动画块中调用 repaint 方法 - 因此对任何视图的动画属性的任何更改都将被动画化。

您应该从动画的完成块中调用该方法 - 使用该animateWithDuration:animations:completion方法而不是您现在使用的方法。

这将在动画完成后执行变换而不制作动画。

于 2013-03-12T18:54:02.920 回答