看板 MacDev 關於我們 聯絡資訊
你的問題是典型的“時間競爭 (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