0

iPhone的Objective-C新手,我正在做一些实验。

在我在屏幕上移动 2 个方块的情况下,我尝试了两种似乎没有任何区别的方法。但我想它可能是更重的图形。

两种方法都在计时器上更新:

[NSTimer scheduledTimerWithTimeInterval:1.0/60.0 target:self selector:@selector(update) userInfo:nil repeats:YES];

1-移动

我尝试的第一种方法是在更新方法中移动方形 UIView 的中心点:

mySquare.center = CGPointMake(mySquare.center.x+0.5, mySquare.center.y+0.5);

2-绘图

第二种方法是更改​​方形 UIView 的 frame 属性并在更新方法中重绘视图:

[mySquare update:CGRectMake(mySquare.frame.origin.x+0.5, mySquare.frame.origin.y+0.5, mySquare.frame.size.width, mySquare.frame.size.height)];

在 Square UIView 更新方法中:

[self setFrame:rect];
[self setNeedsDisplay];

所以,在移动和绘画之间。

使用 Objective-C 使事情发展的最佳方式是什么?什么将提供最佳性能?最佳做法是什么?

谢谢

罗姆

4

1 回答 1

1

正确的方法是使用 Core Animation。查看 MoveMe 示例应用程序。

于 2010-12-31T18:07:07.327 回答