2010-06-01 109 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

相關問題