2013-03-09 9 views
6

oluşturarak ama ben bunu yazmak nasıl karıştı ediyorum. Ben etiket sonra viewController içinde yer ediliyor 60 ° C'de tamsayı saatler initialize Oyunun başında(NSTimer) Bir oyuncu oyunumu girdiğinde zamanlayıcı Çok basit görünüyor aşağı 0'a 60 ila başlar, böylece basit bir Countdown Timer oluşturmak için çalışıyorum bir Timer Countdown

-(int)countDownTimer:(NSTimer *)timer { 
    [NSTimer scheduledTimerWithTimeInterval:-1 
           invocation:NULL 
            repeats:YES]; 
    reduceCountdown = -1; 
    int countdown = [[timer userInfo] reduceCountdown]; 
    if (countdown <= 0) { 
     [timer invalidate]; 
    } 
    return time; 
} 

:

Şimdiye kadar şöyle benim GameController.m içinde bir yöntem oluşturduk . Ama şu anda ben kod sadece 60 yaşında etiketi gösterir ve hiç azaltmaz derleme yaparken.

Herhangi bir yardım büyük takdir - Ben Objective-C için yeni.


şimdi 2 ayrı yöntemlerle içine kod ayırdı bazı yardımıyla DÜZENLEME

. kod artık şuna benzer:

ANCAK
-(void)countDown:(NSTimer *)timer { 
    if (--time == 0) { 
     [timer invalidate]; 
     NSLog(@"It's working!!!"); 
    } 
} 

-(void)countDownTimer:(NSTimer *)timer { 
    NSLog(@"Hello"); 
    [NSTimer scheduledTimerWithTimeInterval:1 
             target:self 
          selector:@selector(countDown:) 
             userInfo:nil 
             repeats:YES]; 
} 

, kod hala düzgün çalışmıyorsa ve benim Görüntüle Denetleyicisi'nden [oyun countDownTimer] yöntemini çağırdığınızda diyerek sonları: "tanınmayan seçici örneğine gönderilen" . Burada neyin yanlış olduğunu açıklayan var mı? Söz itibaren

cevap