0

我试图通过更改其 x 值然后重绘来使矩形在 iPhone 屏幕上移动。我是Objective C的新手,有人可以指点我如何做到这一点的教程吗?看起来 DrawRect 不接受参数,我应该创建一个公共变量来存储矩形 x 值吗?

看起来我需要运行一个 for 循环来逐步缩放矩形的 x 值,并且在每个 x 更改后调用 setNeedsDisplay。我有很多我不认识的文件和默认功能。将 for 循环放在哪里合适?

4

1 回答 1

1

您可以使用 UIView 转换方法。只需转到文档并搜索UIView,应该会有一个动画部分。实际上这很容易。我会在这里发布代码,但这应该是不言自明的。


像这样的东西:

-(void)animateLeft
{
    [UIView beginAnimations:ANIMATE_TO_LEFT context:nil];
    [UIView setAnimationDelay:0];
    [UIView setAnimationDuration:0.2f];
    [UIView setAnimationCurve:UIViewAnimationCurveLinear];
    [UIView setAnimationBeginsFromCurrentState:YES];
    [UIView setAnimationDelegate:self];

    CGRect updateFrame = [self frame];
    updateFrame.origin.x = updateFrame.origin.x-distanceToMove;
    [self setFrame:updateFrame];

    [UIView commitAnimations];
}
于 2012-06-20T19:07:14.000 回答