このようなクラスで非同期リクエストがあり、
class Req{
func processRequest(){
NSURLConnection.sendAsynchronousRequest(request, queue: queue, completionHandler:{ (response: NSURLResponse!, data: NSData!, error: NSError!) -> Void in
//Do some operation here
})
}
}
そして、私はこのように1つのView Controllerからこのメソッドを呼び出しています.
class classOne{
func classOneFun(){
Req().processRequest()
self.demoFun()
}
func demoFun(){
//Do some operation here
}
}
そして、このように別のView Controllerから同じ関数を呼び出していますが、
class classTwo{
func classTwoFun(){
Req().processRequest()
self.sampleFun()
}
func sampleFun(){
//Do some operation here
}
}
demoFun()
ここで、 orが完了したsampleFun()
後にのみ呼び出したいと思います。とが同じクラスにあるprocessRequest()
場合、processRequest() の完了ハンドラーで関数を呼び出すことができます。しかし、私の場合、processRequest() 関数を呼び出すビュー コントローラーが 20 個近くあるため、それはできません。SynchronusRequest は Swift 2.0 で廃止されたため、使用できません。では、非同期リクエストが完了したら、どうすれば他の関数を呼び出すことができるでしょうか?demoFun() or sampleFun()
processRequest()