1

在我的代码missing context for method declaration中,两个 -(void) 语句都出现“”错误,我无法找出原因。

这是我的代码:

- (void)onTimer {
[self checkCollision];
bad.center = CGPointMake(bad.center.x+pos.x,bad.center.y+pos.y);
if(bad.center.x >320 || bad.center.x<0)
    pos.x = -pos.x;
if(bad.center.y >480 || bad.center.y<0)
    pos.y = -pos.y;
}

- (void) checkCollision {
if (CGRectIntersectsRect(good.frame,bad.frame)) {
    [startButton setHidden:NO];
    [timer invalidate];

    CGRect frame = [good frame];
    frame.origin.x = 132.0;
    frame.origin.y = 332.0;
    [good setFrame:frame];

    CGRect frame2 = [good frame];
    frame2.origin.x = 125.0;
    frame2.origin.y = 70.0;
    [bad setFrame:frame2]; 

    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Your not fast enough!"                         message:@"Try again!" delegate:nil cancelButtonTitle:@"Dismiss"otherButtonTitles:nil];

    [alert show];
    [alert release];
}
@end
4

1 回答 1

1

现在在这种情况下;

你没有, @implementation <ClassName>在上面。

错误"missing context for method declaration"只是由于这个原因。

另外,您没有匹配的关闭}

- (void) checkCollision {
    if (CGRectIntersectsRect(good.frame,bad.frame)) {


    ...

    }//for if

}//for checkCOllision

始终检查打开次数 { 是否与关闭次数匹配}。

对于这种错误,请按照以下简单步骤操作:

第 1 步:Cmd+A

第 2 步:Ctrl+I

于 2013-04-02T05:58:47.597 回答