3 回答

TA貢獻(xiàn)1824條經(jīng)驗 獲得超6個贊
好了,您只需在異步回調(diào)的末尾調(diào)用該函數(shù)。那就是異步回調(diào)結(jié)束的時候-異步回調(diào)中的其他所有東西都結(jié)束了!因此,例如:
func myMethod() {
// ... code ...
somebody.doSomethingWith(someObject, asynchronousCallback: {
(thing, otherThing) in
// ... do whatever
// --> CALL THE FUNCTION!
})
// ... code ...
}
如果問題是,你不知道叫什么功能,你可以配置你周圍的功能/對象,以便有人能交出你的函數(shù),而那么你在我說的“調(diào)用函數(shù)”在上面的斑點叫什么。
例如:
func myMethod(f:() -> ()) { // we receive the function as parameter
// ... code ...
somebody.doSomethingWith(someObject, asynchronousCallback: {
(thing, otherThing) in
// ... do whatever
// --> CALL THE FUNCTION, by saying:
f()
})
// ... code ...
}

TA貢獻(xiàn)1829條經(jīng)驗 獲得超6個贊
擴展Matt的答案,您可以使myMethod一個以閉包作為參數(shù)的方法:
func myMethod(completionBlock: (result: String) -> ())
{
// ... code ...
somebody.doSomethingWith(someObject, asynchronousCallback: {
(thing, otherThing) in
// ... do whatever
completionBlock(thing)
})
// ... code ...
}

TA貢獻(xiàn)1865條經(jīng)驗 獲得超7個贊
您能解釋一下如何交接職能嗎?我事先了解到,您可以在編寫“調(diào)用函數(shù)”的地方運行該函數(shù),但是就像我說的那樣,該函數(shù)在另一個文件中。我現(xiàn)在正在處理的特定情況是,我編寫了一個函數(shù),該函數(shù)首先檢查要查找的對象是否在本地數(shù)據(jù)存儲中,否則,它檢查服務(wù)器。由于我希望它可以在任何地方運行,因此將其放在單獨的文件中。但是我仍然需要它來調(diào)用調(diào)用它的類中的函數(shù)。再次感謝。
- 3 回答
- 0 關(guān)注
- 695 瀏覽
添加回答
舉報