0

我觉得掌握一门新的编程语言最好的方法就是制作简单的游戏。

所以对于我的第一个游戏设置,只有 4 个按钮(上、下、左和右)。这些按钮将更改单个图像视图对象的位置。因此,例如,如果我想按向上,则对象将通过更改其 XY 坐标而向上移动。这就是我卡住的地方,我该怎么做?

这是我的伪代码:

_imgShip.frame.position.x += 1;

那行代码在按钮按下事件处理程序中,所以如果我按下 Right 则当前 X 坐标的值将自身加 1。我该怎么做?

4

1 回答 1

0

你很接近。不过,您最好还是移动中心。

_imgShip.center = CGPointMake(_imgShip.center.x + 1.0, _imgShip.center.y);

更新: 我还应该注意您可以翻译视图。这有点不同,但也为旋转和缩放打开了大门,这对游戏很有用:)

_imgShip.transform = CGAffineTransformMakeTranslation(1.0, 0.0);

对于开始转换,请使用Make变体。但也有一些是相互建立的,所以如果你想旋转和翻译,你可以这样做:

_imgShip.transform = CGAffineTransformMakeTranslation(1.0, 0.0);
_imgShip.transform = CGAffineTransformRotate(_imgShip.transform, 0.785); // in radians
于 2013-02-01T01:35:41.077 回答