0
-(void)checkCollision{
if (CGRectIntersectsRect(player.frame, enemy.frame)) {

    [randomMain invalidate];
    [start setHidden:NO];

    CGRect frame = [player frame];
    frame.origin.x = 137.0f;
    frame.origin.y = 326.0;
    [player setFrame:frame];

    CGRect frame2 = [enemy frame];
    frame2.origin.x = 137.0f;
    frame2.origin.y = 20.0;
    [enemy setFrame:frame2];


    [randomMain invalidate];
    [start setHidden:NO];

    [timer invalidate];
    time.text = @"0";

こんにちは、私が直面している問題は、以下のアラートビューを作成しようとしましたが、次のようなエラーが発生することです。単項式に対して無効な引数タイプ「void」。行の読み取り:-(void)alert1:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)ButtonIndex {Cheers

    time.text = @"0"; 
    [timer invalidate];




          NSString *timemessage = [NSString stringWithFormat:@"Unlucky! You survived for %i seconds!", timenumber];
              UIAlertView *alert1 = [[UIAlertView alloc] initWithTitle:@"You've Been Caught!" message:timemessage delegate:nil cancelButtonTitle:@"Try Again" otherButtonTitles:@"Show Leaderboard", @"Submit To game Center",nil];
    [alert1 show];




              -(void) alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)ButtonIndex {
        if (ButtonIndex == 1) {
        GKScore *myScore = [[GKScore alloc]
                            initWithCategory:@"*****"];
            myScore.value = timenumber;



        }
        }










                }}
            ;
4

1 に答える 1

0

-(void) alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)ButtonIndex {は、新しいメソッドの開始です。中には同梱できませんcheckCollision。それとそのすべてのコードを外部に移動する必要があります。必要に応じて、終了直後に行くこともでき checkCollisionます。また、UIAlertView のデリゲートを、コールバックを受け取りたいオブジェクトに設定する必要がありalertView:clickedButtonAtIndex:ます。通常それはselfです。このようなもの:

-(void)checkCollision {
    // Blah, blah, ....
    NSString *timemessage = [NSString stringWithFormat:@"Unlucky! You survived for %i seconds!", timenumber];
    UIAlertView *alert1 = [[UIAlertView alloc] initWithTitle:@"You've Been Caught!" message:timemessage delegate:self cancelButtonTitle:@"Try Again" otherButtonTitles:@"Show Leaderboard", @"Submit To game Center",nil];
    [alert1 show];
}

-(void) alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)ButtonIndex {
    if (ButtonIndex == 1) {
        GKScore *myScore = [[GKScore alloc] initWithCategory:@"*****"];
        myScore.value = timenumber;
    }
    // Handle other button choices ....
}
于 2012-08-20T20:10:22.440 に答える