2012-07-23 249 views
-2

所以我有一個需要執行某些代碼的UIButton的onclick事件,但它可以隨時按下,所以有可能在按下另一個方法的時候按下它仍在運行。有沒有辦法阻止點擊事件,直到具體的方法完成?cocoa touch:等待繼續之前完成的方法

+1

爲什麼你需要這樣做?郵政編碼和問題描述。 – Wug 2012-07-23 20:39:22

+0

有幾種方式可以讓你在不知道太多項目的情況下進行思考。其他方法啓動時,您可以禁用該按鈕。或者,也許可以使用一個變量作爲標誌來指示運行該方法是否安全。其他方法會在開始和結束時設置值。 – 2012-07-23 20:39:50

+0

我無法發佈代碼,因爲它包含公司敏感材料,但實質上,我正在以一種「校準」模式處理來自前置攝像頭的視頻饋送,並且用戶可以按下屏幕上的按鈕停止校準,但如果處理視頻饋送的方法沒有完成,則屏幕上的某些UI元素將具有不正確的值。所以基本上,當用戶點擊按鈕時,我想等到其他方法完成,然後再繼續執行其餘onClick方法中的代碼 – 2012-07-23 20:47:40

回答

1

有沒有辦法阻止點擊事件,直到具體的方法完成?

除非「特定方法」在另一個線程上運行,否則這已經發生了。當其他代碼在主線程上運行時,運行循環無法處理輸入事件。

相關問題