如何在 Swift 中创建一个带有完成处理程序的函数? [英] How could I create a function with a completion handler in Swift?

查看:25
本文介绍了如何在 Swift 中创建一个带有完成处理程序的函数?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我只是想知道我将如何处理这个问题.如果我有一个函数,我想在它完全执行时发生一些事情,我该如何将它添加到函数中?谢谢

I was just curious as to how I would approach this. If I had a function, and I wanted something to happen when it was fully executed, how would I add this into the function? Thanks

推荐答案

假设您有一个从网络下载文件的下载功能,并希望在下载任务完成时收到通知.

Say you have a download function to download a file from network, and want to be notified when download task has finished.

typealias CompletionHandler = (success:Bool) -> Void

func downloadFileFromURL(url: NSURL,completionHandler: CompletionHandler) {

    // download code.

    let flag = true // true if download succeed,false otherwise

    completionHandler(success: flag)
}

// How to use it.

downloadFileFromURL(NSURL(string: "url_str")!, { (success) -> Void in

    // When download completes,control flow goes here.
    if success {
        // download success
    } else {
        // download fail
    }
})

希望有帮助.

这篇关于如何在 Swift 中创建一个带有完成处理程序的函数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆