它说'gameLoop'未宣布。有人可以纠正这个吗?
(void) gameLoop {
if(gameState == kGameStateRunning) {
playerScoreText.hidden = YES;
computerScoreText.hidden = YES;
winOrLoseLabel.hidden = YES;
ball.center = CGPointMake(ball.center.x + ballVelocity.x , ball.center.y + ballVelocity.y);
if(ball.center.x > self.view.bounds.size.width || ball.center.x < 0) {
ballVelocity.x =- ballVelocity.x;
}
if(ball.center.y > self.view.bounds.size.height || ball.center.y < 0) {
ballVelocity.y =- ballVelocity.y;
}
if (CGRectIntersectsRect (ball.frame, playerPaddle.frame)) {
CGRect frame = ball.frame;
frame.origin.x = playerPaddle.frame.origin.x - frame.size.height;
ball.frame = frame;
ballVelocity.x =- ballVelocity.x;
}
答案 0 :(得分:2)
您是否在源头文件中声明了gameLoop方法?如果还没有,从另一个类或同一个类(文件中较早的版本)调用gameLoop方法可能会导致此问题。
所以你要将它添加到头文件中:
- (void)gameLoop;
对于奖励积分:如果gameLoop对您的班级是“私人”(即其他班级不需要调用它),您可以在.m文件顶部的空“扩展”类别中声明它。