API服务被称为iOS之前,函数已返回

时间:2018-10-16 10:03:25

标签: ios swift function

我正在尝试返回“ cardsarray”,其中包含名称,名称和另外4个字段。调用API时,它将返回存储在我的数组中的对象数组。

但是当我运行该应用程序时,它在表格视图中什么都没有显示。

我尝试了一些打印声明。结果表明,该函数在调用API之前返回。不明白为什么。请帮助

enter image description here

[{$smarty.session.YOUR_VARIABLE}]

1 个答案:

答案 0 :(得分:2)

如Larne所建议,您需要了解asynchronous calls

首先,您需要在函数中使用completion block,如下所示:

func getCards(completion: @escaping (([Cards]) -> Void)) {

}

for循环之后,在其中打印cardsArray的地方,需要编写此完成块。

completion(dataArray)

这就是您所说的功能:

getCards { (cardsArray) in

}