iOS 定時器NSTimer 不受UISrollView滑動影響

創(chuàng)建不受滑動影響的NSTimer步驟:

1.手動創(chuàng)建一個NSTimer

2.獲取當(dāng)前線程的RunLoop

3.將NSTimer 按照指定模式加入到RunLoop中

具體代碼如下:

- (void)addTimer{

? ? ? ? ? ? ?NSTimer *timer=? [NSTimer scheduledTimerWithTimeInterval:1.0 target:self ? ? ? ?selector:@selector(timerFunction:) userInfo:nil repeats:YES];

? ? ? ? ? ? ?[timer setFireDate:[NSDate distantPast]];

? ????????? //解決滑動 定時器不走的問題

? ????????? NSRunLoop *runLoop = [NSRunLoop currentRunLoop];

? ????????? [runLoopaddTimer:timer forMode:NSRunLoopCommonModes];

}

本質(zhì):

加入到commonModes中,實際上系統(tǒng)是找出commonModes代表的所有Mode(如NSDefaultRunLoopMode、UITrackingRunLoopMode),然后分別將其加入這些mode中。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • runtime 和 runloop 作為一個程序員進(jìn)階是必須的,也是非常重要的, 在面試過程中是經(jīng)常會被問到的, ...
    SOI閱讀 22,025評論 3 63
  • iOS刨根問底-深入理解RunLoop 2017-05-08 10:35 by KenshinCui 概述 Run...
    mengjz閱讀 1,641評論 1 10
  • RunLoop 文章目錄 RunLoop簡介 1.1 什么是RunLoop? 1.2 RunLoop和線程 1.3...
    May_d8f1閱讀 345評論 0 1
  • 一、什么是RunLoop 基本作用: 保持程序的持續(xù)運(yùn)行; 處理App中的各種事件(比如觸摸事件、定時器事件、Se...
    magic_pill閱讀 971評論 0 0
  • 一朵桃花晗苞待春風(fēng),昨夜東風(fēng)催雪壓柳枝,春扣不響夏的綠門庭,冬不舍春意來溫情!
    詩心不改閱讀 356評論 0 12

友情鏈接更多精彩內(nèi)容