【发布时间】:2017-09-30 15:08:01
【问题描述】:
我正在创建一个简单的手表套件应用程序,它可以显示当地的巴士时刻表。为了获得时间表,我必须向巴士公司的网站提出请求并解析 HTML。 (他们没有公共 api....)
Alamofire 用于发出请求,然后使用 SwiftySoup 解析 HTML。然后将数据保存到带有结构的数组中并创建表。然后将数组保存到 JSON 文件中。因此,当应用程序被强制关闭并再次启动时,应用程序会检查当前时间是否超过了第一班车时间,如果为真,应用程序会再次请求网站获取下一个时间表,否则它只会创建包含时间表数量的表。
由于 Alamofire 我正在执行异步请求,因此即使应用程序没有任何数据,它也会完成“启动”。如何在显示 UI 之前“强制”应用程序等待请求和解析完成?
【问题讨论】:
-
你不能,因为应用程序会被杀死。为加载状态添加一些 UI。
-
好吧。我可以让应用程序在加载状态下加载另一个接口控制器,并等待它完成然后显示表格吗?当我按下“主页按钮”并再次打开应用程序时,如何让应用程序检查它是否需要再次更新数据?
标签: ios asynchronous alamofire watchkit