【问题标题】:How to handle the asynchronous nature of Alamofire [duplicate]如何处理 Alamofire 的异步特性 [重复]
【发布时间】:2015-07-18 19:43:58
【问题描述】:

我的应用遇到了问题。

我需要获取响应数据来填充我的表格视图,但我的 Alamofire GET 请求调用(在 viewDidload 中)的响应速度不快于 tableView 对 numberOfRowsInSection 的调用。

我在软件/移动软件设计方面并不是很了解,所以我有点卡在我需要做的事情上。

我是否应该让一切都等待我的 Alamofire 响应(如果是这样,我该怎么做?)?这似乎违背了 Alamofire 的异步特性。

有没有更好的办法?

【问题讨论】:

    标签: swift alamofire


    【解决方案1】:

    首先您创建一个数组,其中包含将在UITableView 中显示的数据。在 viewDidLoad 中初始化它们。对于numberOfRowsInSection,您将返回myArray.count

    当您获取数据时,将它们插入到您的数组中(例如,从上面的myArray),然后调用tableView.reloadData()

    这应该可以解决您的问题。

    【讨论】:

    • 那么,与 Eric D 所示的完成处理程序相比,为什么要这样做呢?是为了保持它的异步性质吗?您是说 Alamofire 请求的关闭部分中的 reloadData 吗?
    • 好吧,您将在完成处理程序中调用 reloadData,如果我的回答具有误导性,请见谅。这个想法是在异步调用完成其工作后重新加载表。
    猜你喜欢
    • 2016-01-28
    • 1970-01-01
    • 2017-04-18
    • 2017-11-20
    • 1970-01-01
    • 2011-08-03
    • 2013-08-05
    • 2018-10-15
    • 2010-11-12
    相关资源
    最近更新 更多