2010-06-09 60 views
2

我见过很多应用程序从互联网上加载数据到UITableViews,并且他们通常平稳加载。现在轮到我加载这种数据。我在同一时间获得不同的数据,用~#分类类别。这很好,我设法完美地分离了obj-c中的数据。UITableView - 从互联网加载数据

在我的应用程序中的所有工作,只是加载需要很多时间。

所以,我想真正的问题是,你怎么能在后台加载一个tableView的数据,显示一个标签/ UIActivityView或加载时的东西?

谢谢。

回答

1

最简单的方法是添加一个显示某种加载进度的临时单元格(带有“Loading ...”文本或UIActivityIndi​​cator等的标签)。当您的数据加载完成后,请移除该单元格并将您的实际单元格添加到您的数据中。

要加载数据'在后台'我建议看看NSURLConnection。它可以让你隐式地加载数据,所以你不必处理线程。

+1

我有很多处理字符串后我得到它,所以我发现最好把它放在选择器中,并执行'[self performSelectorInBackground:selector]'。所以,我真正想知道的是,如何在选择器的每个进程完成时获得通知。 – Emil 2010-06-09 14:56:52

+2

在您的选择器方法中,您可以调用performSelectorOnMainThread:withObject:waitUntilDone:当进程完成后,将调用主线程中的另一个选择器方法。所以基本上你在你的子线程完成工作来通知它时手动调用主线程。 – nebs 2010-06-10 14:08:40

+1

我真的希望我可以把所有的观点都告诉尼伯斯!您的评论帮助我解决了一个问题。 非常感谢! – changelog 2010-07-03 12:27:27

0

我不明白你的问题。为什么不使用UIActivityIndi​​cator来显示加载。你可以从你的笔尖或编程方式来完成。 也有可能你可以使用NSXMlParsing加载intenet中的内容,这将是很大的问题,并显示一个活动indiacator,直到所有的日期被解析并且一次完成填充表。

如果您得到此答案,请回复。