我试图通过更改其 x 值然后重绘来使矩形在 iPhone 屏幕上移动。我是Objective C的新手,有人可以指点我如何做到这一点的教程吗?看起来 DrawRect 不接受参数,我应该创建一个公共变量来存储矩形 x 值吗?
看起来我需要运行一个 for 循环来逐步缩放矩形的 x 值,并且在每个 x 更改后调用 setNeedsDisplay。我有很多我不认识的文件和默认功能。将 for 循环放在哪里合适?
我试图通过更改其 x 值然后重绘来使矩形在 iPhone 屏幕上移动。我是Objective C的新手,有人可以指点我如何做到这一点的教程吗?看起来 DrawRect 不接受参数,我应该创建一个公共变量来存储矩形 x 值吗?
看起来我需要运行一个 for 循环来逐步缩放矩形的 x 值,并且在每个 x 更改后调用 setNeedsDisplay。我有很多我不认识的文件和默认功能。将 for 循环放在哪里合适?
您可以使用 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];
}