0

我有一个做动画的对象...如果有许多(超过 25 个)对象同时在做动画,它会在拖动时引起混蛋...我在每个对象中使用下面的代码创建动画。我怎样才能提高性能?

#define DEFAULT_ANIM_SPPED 0.6
#define INFINATE_VALUE 1e100f

- (void)startAnimating
{
    mBackgroundImageView.frame = mOriginalFrame;
    [UIView beginAnimations:nil context:nil];

    [UIView setAnimationRepeatAutoreverses:YES];
    [UIView setAnimationRepeatCount:INFINATE_VALUE];
    [UIView setAnimationDuration:DEFAULT_ANIM_SPPED];   

    CGRect tempFrame=mBackgroundImageView.frame;
    tempFrame.origin.y -= mAnimationOffset;
    mBackgroundImageView.frame=tempFrame;
    [UIView commitAnimations];
}
4

1 回答 1

0

与其为每个视图创建动画,不如尝试使用一个动画块来为多个视图设置动画,例如在它们的公共超级视图中。我不确定它是否会对您的案例的 25 个视图做出足够的改进。

于 2011-02-10T06:55:43.787 回答