2010-06-01 74 views
0

我遇到了与我的应用程序有关的问题。数据加载 - 在桌面视图上启动应用程序

一方面,当我的应用程序启动时,显示的第一个视图是tableviewcontroller中的tableview。

另一方面,我的应用程序调用Web服务来收集数据。这些方法位于MyAppDelegate \ applicationDidFinishLaunching中。

问题是我的tableview是由需要来自web服务的数据的自定义单元组成的。

我注意到视图(带有tableview)首先被启动,然后执行MyAppDelegate \ applicationDidFinishLaunchin。

因此,我的自定义单元格的标签都等于null,因为我的数组尚未被Web服务填充。

我想知道制作它的正确方法。

如果有人有想法,请告诉我。

Wallou

回答

1

使用NSNotificationCenter到您的UITableViewController沟通,它需要reloadData为表。

注册(在UITableViewController.viewDidLoad):

[[NSNotificationCenter defaultCenter] addObserver:self 
    selector:@selector(dataLoaded:) 
    name:@"myapp.dataloaded" object:nil]; 

- (void)dataLoaded:(NSNotification *)notification 
{ 
    [self.table reloadData]; 
} 

要发布的通知(您加载数据后):

[[NSNotificationCenter defaultCenter] 
    postNotificationName:@"myapp.dataloaded" object:nil]; 
+0

THX的答复。 它是我的第一个iphone应用程序。 我已经读过NSNOtificationCenter多次,但从来没有使用它。 你能帮我在我的代码中实现它吗?我有点失落(即哪里做什么?) thx再次 – wallou 2010-06-01 13:45:07

+0

行 - 坚持一秒:) – willcodejavaforfood 2010-06-01 13:55:56

+0

更新我的答案与代码,可能工作:) – willcodejavaforfood 2010-06-01 14:01:43

相关问题