【发布时间】:2018-02-06 17:10:44
【问题描述】:
我在一个测验中发现一个问题是“哪个 UIKit 协议包含方法 –tableView:heightForRowAtIndexPath:?”
在没有任何负载的情况下,我想到的协议是 UITableViewDataSource。但是当我查看苹果开发者文档时,我发现我错了。 UITableViewDelegate 是包含该方法的协议。
在此之前我的理解是这些高度方法是数据源协议的一部分。
将它们放在 UITableViewDelegate 而不是 UITableViewDataSource 中是否有任何具体原因?
为什么下面的函数放在UITableViewDelegate
- heightForRowAt indexPath
- heightForHeaderInSection
- heightForFooterInSection
以及为什么将下面的函数放在UITableViewDataSource
- numberOfSectionsInTableView
- numberOfRowsInSection
以前我认为这些是相似类型的函数,所以这些方法必须放在同一个协议中。
请告诉我。
提前致谢
【问题讨论】:
标签: ios uitableview