数据加载 - 在tableview上启动应用程序

时间:2010-06-01 13:15:39

标签: iphone objective-c xcode

我的申请遇到了问题。

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

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

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

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

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

我想知道正确的方法。

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

Wallou

1 个答案:

答案 0 :(得分:1)

使用NSNotificationCenter与您的UITableViewController进行通信,它需要为表重新加载数据。

注册(在你的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];