cellForRow在IndexPath执行一次太少了?

问题描述 投票:0回答:3

这是今天发生在我身上的一件奇怪的事情:

我正在使用表格视图来显示接下来7天的事件。 numberOfRowsInSection硬编码为始终返回7。

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return 7
}

在indexPath的cellForRow中,我将自定义UITableViewCell出队。然后,我创建一个名为Today的变量来保存当前日期并打印。

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

let thisWeekCell = thisWeekTableView.dequeueReusableCell(withIdentifier: ThisWeekTableViewCell.reuseIdentifier()) as! ThisWeekTableViewCell

let today = Date()
print(today)

return thisWeekCell
}

[运行应用程序时,我的UITableView在屏幕上显示正确的单元格数(7)。但是,Xcode控制台仅记录了我的Today变量的值6次。那就是让我感到惊讶的:应该为每个单元调用一次,对吗?那么,为什么屏幕上的单元格数量与cellForRowIndexPath处的代码执行的次数之间存在差异?

这是今天发生在我身上的一件奇怪的事情:我正在使用表格视图来显示接下来7天的事件。 numberOfRowsInSection硬编码为始终返回7。func tableView(_ tableView:...

ios swift xcode uitableview
3个回答
1
投票

方法


0
投票

应该为每个单元格调用一次,对吗?


0
投票

感谢您的投入,我实际上只是想出了问题所在。

© www.soinside.com 2019 - 2024. All rights reserved.