NSTimer和CADisplayLink的用法

2021-06-16 23:43:44 字數 932 閱讀 6209

nstimer初始化器接受呼叫方法邏輯之間的間隔作為它的其中乙個引數,預設一秒執行30次。cadisplaylink預設每秒執行60次,通過它的frameinterval屬性改變每秒執行幀數,如設定為2,意味cadisplaylink每隔一幀執行一次,有效的邏輯每秒執行30次。

此外,nstimer接受另乙個引數是否重複,而把cadisplaylink設定為重複(預設重複?)直到它失效。

還有乙個區別在於,nstimer一旦初始化它就開始執行,而cadisplaylink需要將顯示鏈結新增到乙個執行迴圈中,即用於處理系統事件的乙個cocoa touch結構。

nstimer 我們通常會用在背景計算,更新一些數值資料,而如果牽涉到畫面的更新,動畫過程的演變,我們通常會用cadisplaylink。

但是要使用cadisplaylink,需要加入quartzcore.framework及#import

nstimer

@inte***ce viewcontroller : uiviewcontroller

//使用

float theinterval = 1.0 / 30.0f;  

//每秒呼叫30次

thetimer = [nstimer scheduledtimerwithtimein

terval:theinterval target:self selector:@selector(mytask) userinfo:nil repeats:yes];

//停用

[thetimer invalidate];

thetimer = nil;

cadisplaylink,需要加入quartzcore.framework及#import

if(thetimer == nil)

//停用

[thetimer invalidate];

thetimer = nil;

NSTimer和CADisplayLink的用法

nstimer初始化器接受呼叫方法邏輯之間的間隔作為它的其中乙個引數,預設一秒執行30次。cadisplaylink預設每秒執行60次,通過它的frameinterval屬性改變每秒執行幀數,如設定為2,意味cadisplaylink每隔一幀執行一次,有效的邏輯每秒執行30次。此外,nstimer接...

NSTimer的簡單使用和停止

nstimer timer 1.執行一次自動停止 timer nstimer scheduledtimerwithtimeinterval 3.0 target self selector selector function userinfo nilrepeats no 這樣timer執行一次就會自...

NSTimer 和 NSArray 同時使用的問題

我宣告乙個全域性變數nsarray存放動畫所需要各幀,然後用nstimer進行定時動畫顯示,如下 myimages nsarray arraywithobjects uiimage imagenamed frame 1.png uiimage imagenamed frame 2.png uiima...