2017-07-16 116 views
-3

我最近做了一个天气,从天气开放地图中获取数据,但它需要永远的分析数据显示在屏幕上... 有了这样的代码:SwiftyJson会使解析swift json更快吗?

let tempF = jsonResult["tempFahrenheit"] 

我知道数据是快速的,因为我看到的结果立即显示在控制台,所以swiftyjson加快显示屏幕上的数据显示? Swift 3有没有swiftyjson?

+0

这将是很好,如果你能告诉我你的解析代码和ui更新。问题与sifty json不相关。其他的东西。 – emraz

回答

0

您发布的代码似乎没有更新屏幕上的任何UI元素。

如果你在哪里的东西更新UI类似

mylabel.text = someVariable

另一个地方和UI仍然laggy,这也许是因为你还没有包裹在主线程的UI 变化。

做更新正确的方法上面会

DispatchQueue.main.async { mylabel.text = someVariable }

+0

所以我只是把视图控制器viewDidLoad的内部?我仍然不明白,一旦获得数据,将花费如此长的时间来更新屏幕...... –

+0

您必须更新主线程上的UI,为什么在这里说明https://www.quora。 com/Why-the-UI-always-be-updated-on-Main-Thread –

+0

DispatchQueue.main.async 可以在函数中吗?如果是这样,怎么样? –

0

调用API>获得响应>解析数据>更新UI [它应该在主队列]

写下您的UI更新如下面的主队列中的相关代码...

DispatchQueue.main.async { 
textFiled.text = yourText 
imageview.image = yourImage 
....... 
}