2012-03-22 110 views
1

我試圖使視圖控制器更改中的某種延遲。我需要能夠點擊下一頁的按鈕,但也沒有立即改變。也就是以某種方式給它一個計時器或延遲。有人能指引我正確的方向還是給我一點幫助?延遲切換視圖更改

回答

4
[self performSelector:@selector(selector) withObject:self afterDelay:delay]; 

可用於延遲方法的執行。我聽說sleep()函數也被拋出,但它鎖定了你所在的線程。

的NSTimer也有一個有用的便捷方法:

[NSTimer scheduledTimerWithTimeInterval:2.0 
    target:self 
    selector:@selector(selector) 
    userInfo:nil 
    repeats:NO]; 

特別是,該計時器會調用2秒後命名爲「選擇」的方法,並沒有重演。

編輯:你的情況,你可能想使用performSelector:withObject:afterDelay:像這樣:

[self.button addTarget:self action:@selector(myMethod) forControlEvents:UIControlEventTouchUpInside]; 

然後內myMethod的,執行你的延遲,這看起來是這樣的:

[self performSelector:@selector(myTransition) withObject:self afterDelay:4.00]; 
+0

真正的新本,但我沒有看到第一個代碼的時間,所以我如何設置,並在這裏的NSTimer代碼是4.00的計時器,在那裏將與按鈕進去試圖推遲? – Austinj 2012-03-22 22:05:41

+0

檢查編輯。 – CodaFi 2012-03-22 22:08:59