作者darktt (小朱)
看板MacDev
標題Re: [問題] 有關使用NSURLSession抓Json資料的問題
時間Sun Apr 17 11:12:17 2016
你的問題是典型的“
時間競爭 (Timing Issue)”,
主要的原因是
UI 與
網路資料完成處理的時間順序不一定,
正常的情況下是 UI 先完成再處理網路資料,
不過有可能是網路資料先完成,UI 才完成,
結果就是無法正確顯示資料。
如果你真的要網路優先處理的話,
是有一個解決方法,
有幾個要點:
1. 網路資料一定要保存到本地端的檔案裡(如 NSUserDefaults)。
2. 完成網路資料之後一定要有廣播通知 UI 去取得資料(如 NSNotificationCenter)。
3. UI 在載入的過程中一定先檢查本地端的檔案有沒有資料,才再註冊廣播。
這樣子就算網路資料優先完成,UI 也能將資料取回來,
就不會有顯示上的問題了。
--
→ lwecloud: 為什麼手把是限制級!?
推 kris4588: 因為會震動啊~
推 awano14: 3樓神回
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.133.234.121
※ 文章網址: https://www.ptt.cc/bbs/MacDev/M.1460862741.A.6E7.html
推 strife00: 謝秀!我再來試試 04/17 18:44
推 rollr: 有學有推 04/18 06:43
→ yr: timing 不是 timeing 04/18 10:42
謝謝指正
※ 編輯: darktt (220.133.234.121), 04/18/2016 18:43:12