2011-02-01 66 views
0

我試圖解析XML文檔和數組加載到一個表視圖。陣列沒有得到到的cellForRowAtIndexPath

在初始化我打電話initializeDatabase,這使得一個URLRequest和連接。然後我打電話給解析文檔的parseXML。所有這一切似乎運作良好。

完成時我想的結果陣列裝載到表視圖。沒有發生。

我已放置的NSLog語句中的每個的方法來跟蹤這個下來,包括表視圖數據源的方法。

2011-02-01 07:29:17.770項目[1664:207] initializeDatabase:
2011-02-01 07:29:17.814項目[1664:207] numberOfSections
2011-02-01 07:29:17.815項目[1664:207]結果爲numberOfRowsInSection:(null)
2011-02-01 07:29:18.560 Project [1664:207]連線已建立
2011-02-01 07:29: 18.562 Project [1664:207] connectionDidFinishLoading:
2011-02-01 07:29:18.562 Project [1664:207] parseXML called
2011-02-01 07:29:18.563 Project [1664:207] parserDidStartDocum ENT
2011-02-01 07:29:18.564項目[1664:207] parserDidEndDocument:
2011-02-01 07:29:18.564項目[1664:207]結果: 「ProjectData的:0x4e461b0」 ​​

的的cellForRowAtIndexPath不叫。我不知道爲什麼。

任何想法?

庫爾特

回答

1

這聽起來像你需要在你的表視圖運行的方法reloadData已解析的數據之後。重新加載數據使表視圖詢問其數據源應該顯示多少行。表視圖在viewDidLoad上自動執行此操作,但在您的情況下,您沒有任何數據要顯示。因此在parserDidEndDocument中,運行[tableView reloadData];

其他解決方案,請確保委託和數據源都設置爲正確的實例。

+0

謝謝你的幫助。 – Kurt 2011-02-01 18:01:44

0

你也可以使用NSArrayController和綁定。設置contentArray到解析數據的陣列,並結合各列的值。確保tableView上的dataSource沒有被設置爲任何東西。你不必每次都調用reloadData。