0

我希望能够使用 UIAccelerometer 移动 CCSprite。它只能上下移动。我使用的代码是这样的:

- (void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration
{
valueX = acceleration.y * 45.0;

int newPos = (int)(valueX + _rocket.position.x); 

CGPoint newCenter = ccp(100, newPos);
_rocket.position = newCenter;
}

_rocket 是精灵。

当我在我的 iphone 上运行它时,它只是在同一个地方振动,我无法将它移动到顶部或底部。怎么了?

4

1 回答 1

1

试试 int newPos = (int)(valueX + _rocket.position.y);
int newPos = (int)(valueX + _rocket.position.x);

根据您的代码, position.x 始终为 100。这就是为什么int newPos = (int)(valueX + _rocket.position.x);不工作的原因。

于 2013-08-16T14:38:12.560 回答