Re: [問題] 有關使用NSURLSession抓Json資料的問題

作者: darktt (小朱)   2016-04-17 11:12:17
你的問題是典型的“時間競爭 (Timing Issue)”,
主要的原因是 UI 與網路資料完成處理的時間順序不一定,
正常的情況下是 UI 先完成再處理網路資料,
不過有可能是網路資料先完成,UI 才完成,
結果就是無法正確顯示資料。
如果你真的要網路優先處理的話,
是有一個解決方法,
有幾個要點:
1. 網路資料一定要保存到本地端的檔案裡(如 NSUserDefaults)。
2. 完成網路資料之後一定要有廣播通知 UI 去取得資料(如 NSNotificationCenter)。
3. UI 在載入的過程中一定先檢查本地端的檔案有沒有資料,才再註冊廣播。
這樣子就算網路資料優先完成,UI 也能將資料取回來,
就不會有顯示上的問題了。
作者: strife00 (strifecloud)   2016-04-17 18:44:00
謝秀!我再來試試
作者: rollr (衛生紙的心情)   2016-04-18 06:43:00
有學有推
作者: yr (Sooner Born Sooner Bred)   2016-04-18 10:42:00
timing 不是 timeing

Links booklink

Contact Us: admin [ a t ] ucptt.com