2012-05-11 55 views
2

爲什麼在appDidFinishLaunching中放置時不會重複?NSTimer不會從AppDelegate重複

self.ti = [NSTimer timerWithTimeInterval:10. target:self selector:@selector(bounce:) userInfo:nil repeats:YES]; 
[self.ti fire]; 

千恩萬謝

+0

什麼是 '反彈' 的代碼?另外,你如何設置'ti'。 – Jeremy1026

+0

在跳動中,我現在只是簡單地記錄下它是否被調用,ti是我頭中的一個屬性(強,非原子)並被合成。它似乎代碼不是甚至一旦放棄一次就不重複?非常感謝 – Jules

回答

4

我覺得你bounce有一個錯誤的簽名。它應該是

- (void)bounce:(NSTimer*)theTimer { 
    NSLog(@"Here..."); 
} 

您應該使用selector(bounce:)來安排此方法。你也應該調用scheduledTimerWithTimeInterval而不是timerWithTimeInterval

self.ti = [NSTimer 
    scheduledTimerWithTimeInterval:10. 
          target:self 
          selector:@selector(bounce:) 
          userInfo:nil 
          repeats:YES]; 
+0

你是正確的,我需要:在我的選擇器中,謝謝:) – Jules

4

我不知道它是否會有所幫助,但嘗試使用scheduledTimerWithTimeInterval方法。舉個例子:

self.ti = [NSTimer scheduledTimerWithTimeInterval:10. target:self selector:@selector(bounce) userInfo:nil repeats:YES]; 

希望它有助於

+0

這也工作了,謝謝:) – Jules