tableView(cellForRowAtIndexPath) 与 tableView.cellForRowAtIndexPath()?

Posted

技术标签:

【中文标题】tableView(cellForRowAtIndexPath) 与 tableView.cellForRowAtIndexPath()?【英文标题】:tableView(cellForRowAtIndexPath) vs. tableView.cellForRowAtIndexPath()? 【发布时间】:2015-12-26 19:12:01 【问题描述】:

这两种方法看起来非常相似,我不确定我是否完全理解如何知道要调用哪一种。

我这样认为是对的吗

tableView(cellForRowAtIndexPath) 

是 tableView 发送到它的 dataSource 而,

tableView.cellForRowAtIndexPath() 

控制器发送给tableView的是什么?

【问题讨论】:

【参考方案1】:

让我们以标准的 Swift 方式编写这些方法选择器。

选择器tableView(_:cellForRowAtIndexPath:)UITableViewDataSource 协议的一部分。表格视图会针对每个可见行向其dataSource 发送一次此消息。

选择器cellForRowAtIndexPath(_:)UITableView 类的一部分。您可以将其发送到表格视图以向其询问 可见 行的单元格。如果该行可见,则表格视图将返回该单元格。否则,表格视图返回 nil。

【讨论】:

好的,我想我明白了。看到他们像你一样写出来很有帮助。谢谢!

以上是关于tableView(cellForRowAtIndexPath) 与 tableView.cellForRowAtIndexPath()?的主要内容,如果未能解决你的问题,请参考以下文章

我的应用程序崩溃,原因'UITableView dataSource 必须从 tableView 返回一个单元格:cellForRowAtIndexPath

如何在一个 tableView 中使用两个不同的自定义单元格?使用情节提要,iOS 7

以编程方式更改表格单元格中按钮的图像

图像下载后调整表格单元格大小

设置静态表格视图单元格的复选标记

添加单元格和使用 UITableView 滚动时出现图形故障