程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> ios-NSTimer沒有執行預期效果

ios-NSTimer沒有執行預期效果

編輯:編程綜合問答
NSTimer沒有執行預期效果

不知道我的問題是不是很好解決,請大家幫忙

有一個類,是NSTimer類型的timer,當執行IBAction時,調用一個方法,裡面有下面代碼:

if (timer) timer = nil;
timer = [NSTimer timerWithTimeInterval:0.2 target:self selector:@selector(removeOverlay) userInfo:nil repeats:NO];

類中還有另一個方法:

- (void)removeOverlay {
...
}

但是沒有像預期的間隔0.2秒之後觸發

不知道為什麼?

最佳回答:


不用scheduled方式初始化的,需要手動addTimer:forMode: 將timer添加到一個runloop中。而scheduled的初始化方法將以默認mode直接添加到當前的runloop中.

舉例:

NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:10.0 target:self selector:@selector(timerFired:) userInfo:nil repeats:NO];

NSTimer *myTimer = [NSTimer timerWithTimeInterval:3.0 target:selfselector:@selector(timerFired:) userInfo:nil repeats:NO];
[[NSRunLoop currentRunLoop] addTimer:myTimer forMode:NSDefaultRunLoopMode];
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved