我有一個簡單的應用程序,按鈕,UIImageView和NSTimer。 定時器每5秒反覆啓動一次以更新ImageView,同時該按鈕僅停止定時器並切換到另一個View。NSTimer凍結應用程序,直到它再次被觸發?
問題是,當我按下按鈕時,幾秒鐘內沒有任何反應(直到定時器再次啓動)。
有沒有辦法導致按鈕停止計時器,並在任何給定的時間而不是在計時器的間隔之間完成其工作?
該按鈕在InterfaceBuilder中定義並連接到代碼中的函數。
NSTimer代碼:(我已經嘗試&,但沒有將它添加到RunLoop中)。
updateTimer = [NSTimer scheduledTimerWithTimeInterval:5 target:self selector:@selector(updateImageViews) userInfo:nil repeats:YES];
NSRunLoop* runLoop = [NSRunLoop currentRunLoop];
[[NSRunLoop currentRunLoop] addTimer:updateTimer forMode:NSDefaultRunLoopMode];
[runLoop run];
謝謝!
你使用無效來停止計時器...?你可以把一些代碼...? – 2010-04-13 10:04:34
我已經添加了計時器代碼, 和是的,我使用invalidate來停止按下按鈕時被調用的函數中的定時器 thanks – 2010-04-13 16:11:13
當你說「沒有任何事情發生」時,你的意思是沒有出現下一個視圖?定時器觸發時視圖是否出現?不是真的明確問題是什麼,想看什麼以及看到什麼? – TechZen 2010-04-13 18:53:19