我有一个子视图,其中有一个从在线服务器(标题,副标题和图像)获取数据的uitableview。当我点击显示子视图的按钮时,需要一点时间才能使用WiFi连接,但在3G网络下需要更长的时间,以便您真正感受到加载视图和按下按钮之间的差距。我想要做的是显示一个uiactivityindicatorview当你按下按钮,加载视图后,当它已经加载停止活动指示器UITableView已加载数据
我怎样才能检查uitableview已完成加载? 你有其他建议吗?
在此先感谢
我有一个子视图,其中有一个从在线服务器(标题,副标题和图像)获取数据的uitableview。当我点击显示子视图的按钮时,需要一点时间才能使用WiFi连接,但在3G网络下需要更长的时间,以便您真正感受到加载视图和按下按钮之间的差距。我想要做的是显示一个uiactivityindicatorview当你按下按钮,加载视图后,当它已经加载停止活动指示器UITableView已加载数据
我怎样才能检查uitableview已完成加载? 你有其他建议吗?
在此先感谢
使用asynchronious请求或线程(看看的NSOperation)
查找到做网络运营异步,而不是阻塞主UI的线程。 ASIHTTPRequest是一个非常好的库:http://allseeing-i.com/ASIHTTPRequest/
正如其他人所说,如果你不使用异步方法来做到这一点,我强烈建议你这样做,否则你会阻止你的应用程序,只要数据正在下载。
虽这么说,你可以展示活动的指标而被加载的数据,那就是直到委托方法
- (void)connectionDidFinishLoading:(NSURLConnection *)connection
被调用。然后,你的表应该填充数据,指标将消失。
我希望这对你有所帮助
我没有在我的应用程序中使用你的方法,但它给了我一个关于在表加载数据时执行一些任务的提示。谢谢。 – 2011-01-17 14:51:13
请问您能否给我提供更多信息或小样本?谢谢 – 2010-10-26 15:26:19
有NSOperationQueue你可以添加NSOperations。 每个NSOperation是一个单独的线程中的URL连接命中。这不会阻止用户界面,并实现多线程。 :) – 2011-11-23 14:33:27