SwiftyJson 是不是可以更快地解析 swift json?
Posted
技术标签:
【中文标题】SwiftyJson 是不是可以更快地解析 swift json?【英文标题】:Does SwiftyJson make parsing swift json faster?SwiftyJson 是否可以更快地解析 swift json? 【发布时间】:2017-07-16 20:58:56 【问题描述】:我最近制作了一个从打开的天气地图中获取数据的天气,但是解析后的数据需要 永远 才能显示在屏幕上... 使用这样的代码:
let tempF = jsonResult["tempFahrenheit"]
我知道数据很快,因为我看到 url 结果立即显示在控制台中,那么 swiftyjson 会加快在屏幕上显示数据的速度吗? Swift 3 有 swiftyjson 吗??
【问题讨论】:
如果你能告诉我你的解析代码和ui更新会很好。问题与 sifty json 无关。它是别的东西。 【参考方案1】:您发布的代码似乎没有更新屏幕上的任何 UI 元素。
如果您在其他地方使用类似
的方式更新 UImylabel.text = someVariable
UI 还是卡顿,可能是因为你没有封装 UI 改变主线程。
进行上述更新的正确方法是
DispatchQueue.main.async mylabel.text = someVariable
【讨论】:
所以我会把它放在视图控制器 viewDidLoad 中?我仍然不明白,一旦我获得数据,它会花费这么长时间来更新屏幕...... 你必须在主线程上更新 UI 为什么在这里解释,quora.com/Why-must-the-UI-always-be-updated-on-Main-Thread DispatchQueue.main.async 可以在函数内部吗?如果有,怎么做?【参考方案2】:调用 API> 获取响应> 解析数据 > 更新 UI [应该在主队列中]
在主队列中编写与 UI 更新相关的代码,如下所示...
DispatchQueue.main.async
textFiled.text = yourText
imageview.image = yourImage
.......
【讨论】:
以上是关于SwiftyJson 是不是可以更快地解析 swift json?的主要内容,如果未能解决你的问题,请参考以下文章
我应该如何使用 Alamofire 和 SwiftyJSON 解析来自 API 的 JSON 响应?