objective-c - 数组未到达 cellForRowAtIndexPath

标签 objective-c ios

我正在尝试解析 XML 文档并将数组加载到 TableView 中。

在 init 中,我调用initializeDatabase,它生成 URLRequest 和 Connection。然后我调用 parseXML,它解析该文档。这一切似乎运作良好。

完成后,我想将结果数组加载到 TableView 中。没有发生。

我在每个方法中放置了 NSLog 语句来跟踪这一点,包括 TableView 数据源方法。

2011-02-01 07:29:17.770 Project[1664:207] initializeDatabase:
2011-02-01 07:29:17.814 Project[1664:207] numberOfSections
2011-02-01 07:29:17.815 Project[1664:207] results in numberOfRowsInSection: (null)
2011-02-01 07:29:18.560 Project[1664:207] Connection was made
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] parserDidStartDocument
2011-02-01 07:29:18.564 Project[1664:207] parserDidEndDocument:
2011-02-01 07:29:18.564 Project[1664:207] results: "ProjectData: 0x4e461b0"

未调用 cellForRowAtIndexPath。我不知道为什么。

有什么想法吗?

库尔特

最佳答案

听起来您需要在解析数据后在 TableView 上运行 reloadData 方法。重新加载数据使 TableView 询问其数据源应显示多少行。 TableView 会在 viewDidLoad 上自动执行此操作,但在您的情况下,此时您没有任何数据可显示。因此在 parserDidEndDocument 中,运行 [tableView reloadData];

其他解决方案,确保委托(delegate)和数据源都设置为正确的实例。

关于objective-c - 数组未到达 cellForRowAtIndexPath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4864146/

相关文章:

ios - 可扩展单元格不会扩展

android - 在代号一中使用 .NET Web 服务

ios - 通过其核心 api 将图像上传到 DropBox 服务器会在 iOS 中出错

ios - Objective C - 多次运行方法,完成后运行另一个方法

iphone - 等待多个异步网络调用,然后对其结果执行操作

ios - 列出重新加载动画故障

objective-c - Objective-C中的哈希表

iphone - 将 MKPolyline Overlay 添加到 MKMapView 会导致应用程序崩溃

ios - 将项目转换到两个选项之一

ios - 无法在 NSCoding 协议(protocol)方法中使用惰性变量