1
在AlamoFire中获取请求我试图更新我的进度条。像这样:在AlamoFire(异步)调用中非常缓慢的UIProgressView进度更新
alamofireManager.request(.GET, urlPath, parameters: params).responseJSON{(request,response,JSON,error) in
...<code here>...
dispatch_async(dispatch_get_main_queue(), {
NSNotificationCenter.defaultCenter().postNotificationName(LoginVCHideSpinnerAndShowProgressBarName as String, object: self)
})
...<more code here>...
}
对于一些原因,这需要几秒钟来执行,如果我用dispatch_sync
而不是应用程序似乎只是停留在这一点上获得,但(活动指示灯微调保持UI不冻结去)。 我还想指出,一旦应用程序点击此代码,它将继续执行后的代码,就好像它已被执行一样。然后在6秒后执行,就好像它没有在主线程中被调用一样。
我也只是简单地尝试这样做,而不是使用通知。
dispatch_async(dispatch_get_main_queue(), {
loginVC.progressBar.hidden = false
loginVC.indicator.hidden = true
loginVC.progressBar.setProgress(0.1, animated: true)
})
这似乎比通知慢。
我很困惑,为什么会发生这种情况,因为我告诉它在主线程中更新。我也很困惑为什么通知实际上会更快一点。
谢谢:)对于迟到的接受度假抱歉是在度假 – Boid
不用担心......很高兴帮助! – cnoon