Hoşgeldin. Soru sormak veya cevaplamak için hemen üye ol.
0 oy
347 kez görüntülendi
ios development kategorisinde tarafından

Merhaba arkadaşlar,

Uygulamamda bir bölümde yaklaşık 5 adet ayrı ayrı fonksiyonu sırasıyla çalıştırmam gerek yani ( func1, func2, func3, func4, func5 ) sırasıyla biri bitince diğeri çalışacak böyle bir yapıyı nasıl kurabilirim.

1 cevap

+2 oy
tarafından
tarafından seçilmiş
 
En İyi Cevap

Merhaba,
Her bir func için completionHandler tanımlarsınız. Mesela func1 için completinHandler tanımlayıp diğerine geçersiniz sırasıyla:

func func1(_ completionHandler : @escaping ((_ isResponse : Bool) -> Void)) {

    //Burada func1 içinde, if else ile istediğin işlemler başarıyla biterse completionHandler için true ayarı yaparsın
    completionHandler(true)
    //Burada func1 içinde istediğin işlemler başarıyla bitmezse bir hata olursa completionHandler için false ayarı yaparsın
    completionHandler(false)
}

//sonra uygulamandaki bölümde ise

func1 { (isResponse) in

    //Burada isResponse true döndüyse func2 çalıştırılacak
    //func2()
    //sonra yine func2 için de yukarıdaki gibi completionHandler tanımlayıp sırayla gidersiniz..

}
...