2014-06-15 66 views
0

我無法將其移植到swift中,NSAnimationContext的其餘部分很簡單。NSAnimationContext completionHandler如何使用Swift語言

[[NSAnimationContext currentContext] setCompletionHandler:^(void) { 
    //doSomething here... 
}]; 

在文檔中說它var completionHandler: (() -> Void)!它對我沒有任何意義。 謝謝。

回答

2

() -> Void是Swift閉包的簽名,它不接受任何參數,也不返回任何內容。使用它就像你將一個ObjC塊:

NSAnimationContext.currentContext().completionHandler = { 
    // do something here 
} 

注意,因爲它被聲明爲一個屬性,你應該把它像一個 - ObjC的getter/setter對不轉化爲斯威夫特。

+0

你確定嗎,它會拋出錯誤'NSAnimationContext'沒有一個名爲'setCompletionHandler'的成員? – mohacs

+0

啊,沒有在你的帖子中發現部分聲明。見編輯的答案。 – rickster

+0

我卡住了這個'var completionHandler:(() - > Void)!'看不到它很簡單。它的工作,謝謝。 – mohacs

相關問題