FNG,在这里。
我正在通过Apple的iOS教程。刚刚完成“显示数据”小节,我即将完成上一个教程。问题是,没有数据显示。
似乎没有调用tableView:cellForRowAtIndexPath
方法,因为添加到方法中的NSLog(@"Here");
(return cell;
行之前)没有创建输出。
当然,我可以从头开始,只是重新创造这个东西,但这将失去一个宝贵的学习机会。另外,我可能会在其他地方创建另一个错误。
应用程序构建并启动正常,只显示没有数据。正在调用loadInitialData
方法。
另外,我正在使用Xcode 6.1,我认为这个版本超出了本教程中使用的版本,但其他一切似乎都没问题。
有关如何从此处调试的任何提示都非常感谢。
编辑:感谢@Alex和@lefteris以及@zisoft的答案和编辑。对于遇到此问题的任何人,事实证明我遗漏了将数据放入数组([self.toDoItems addObject:anItem]
)的代码,这意味着tableView:numberOfRowsInSection
返回0,因此没有任何进一步调用{{1} } 方法。我通过搜索“表视图数据源”的文档找到了答案(感谢@Alex),通过理解的开始,我有一个“a-ha!”。
答案 0 :(得分:0)
您可能缺少订阅表视图数据源协议
只需订阅UITableViewDataSource
和viewDidLoad
即可
self.tableView.datasource = self
UITableViewDelegate
答案 1 :(得分:0)
可能性如下。 您没有设置表视图数据源:(表视图数据源定义表视图中的数据加载)。
您可以以编程方式设置表视图数据源(如果以编程方式创建表视图)以及storyboard或xib。
在以编程方式创建表视图的情况下,您的类应符合<UITableViewDataSource>
之类的表视图数据源procol,并初始化数据源,如_yourTableView.dataSource = self;
有关详情,请参阅此处:Create table view programmatically
在使用Storyboard创建的情况下,您只需通过Ctrl +连接数据源并将表视图拖动到已定义数据源方法的View Controller(或可能是视图类)。 请参阅此Create table view with storyboard
这是表视图数据源在创建表视图时所做的事情:
获得问题的另一个机会可能是您没有实施数据源 - tableView:numberOfRowsInSection
:方法。实现此方法并返回所需的单元格数。