numberOfRowsInSection 多次调用但 cellForRowAtIndexPath 从未调用

Posted

技术标签:

【中文标题】numberOfRowsInSection 多次调用但 cellForRowAtIndexPath 从未调用【英文标题】:numberOfRowsInSection called multiple times but cellForRowAtIndexPath never called 【发布时间】:2014-09-02 08:46:42 【问题描述】:

我每分钟都在使用 NSLog 跟踪我的代码。无论出于何种原因, numberOfRowsInSection 都被无休止地调用,正确返回 1;但从未调用 cellForRowAtIndexPath 。有什么想法可能导致这种情况吗?

我的表格和 ViewController 完全使用故事板布局。这是我第一次遇到这个问题。通常,无论我是否使用幻数,如果 numberOfRowsInSection 被调用,那么 cellForRowAtIndexPath 将被调用。这次为什么不行? [self.tableView reloadData]; 应该同时触发它们。

【问题讨论】:

确保您已将表格视图和表格单元格链接到正确的单元格标识符。如果您有插入表格视图的普通 VC,则必须在情节提要中将其与 VC.h 链接 用代码更新你的问题 检查委托连接可能会导致问题或检查数组计数。 添加代码sn-p 您要用来填充表格视图的数组可能为空 【参考方案1】:

您忘记设置 TableView 的 DataSource。

【讨论】:

以上是关于numberOfRowsInSection 多次调用但 cellForRowAtIndexPath 从未调用的主要内容,如果未能解决你的问题,请参考以下文章

多次调用以获得收益

ReloadData 不会触发 tableView:numberOfRowsInSection:

对成员 '(_:numberOfRowsInSection:)' 的模糊引用

如何返回 numberOfRowsInSection?

数组未与 tableView(numberOfRowsInSection) 方法连接

numberOfRowsInSection:核心数据和多个部分的方法