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