如何在Swift中为完成后台提取调用完成处理程序。我做了以下事情:
func application(application: UIApplication,
performFetchWithCompletionHandler completionHandler: (UIBackgroundFetchResult) -> Void) {
// Do something
completionHandler (UIBackgroundFetchResultNoData) // This does not work :(
return
}
你能帮帮我吗?谢谢,
托比
答案 0 :(得分:7)
枚举案例为UIBackgroundFetchResult.NoData
,所以正确的方法是:
completionHandler (UIBackgroundFetchResult.NoData)
甚至:
completionHandler (.NoData)
因为可以从闭包签名中推断出类型
提示:当不确定函数签名或枚举情况等时,在Xcode中写入类型,在本例中为UIBackgroundFetchResult
,然后cmd +单击它以转到定义,或者选项+单击弹出宣言。这通常有很大帮助。