选择题第三题

选择题第三题

为什么说

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section;

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath;

这两个方法不是tableView的delegate方法?  上节课老师自己说这几个方法是tableview的delegate方法的啊

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
Tender10 2018-04-27 10:00:50

其实UITableView有数据源方法和代理方法,数据源顾名思义是跟数据有关的方法,比如说展示的行数、分区。代理方法就是实际的控制,比如点击cell具体去做什么。

  • 老师,是否可以这样理解?由于设置了dataSource,所以需要实现cell来容纳dataSource的内容,而分几部分、可否编辑cell都与此无直接关联,因此这道题这么选。可以这么理解吗?
    2019-01-01 23:10:34
  • 并不是因为设置了dataSource,而需要实现cell来显示内容,而是因为需要通过cell来展示数据内容,而要设置dataSource,这个关系不能反过来哦。不过确实cell如果想要设置与数据有关的东西,就设置dataSource即可。如果是编辑、删除等这些操作,就设置delegate即可。
    2019-01-02 09:47:41
  • 那从这个意义上来讲,可以理解为是dataSource管理了、规范了cell的数据吗?是这种关系吗?
    2019-01-05 21:00:40
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星

相似问题

登录后可查看更多问答,登录/注册

iOS进阶:界面优化与数据存储
  • 参与学习       516    人
  • 提交作业       158    份
  • 解答问题       637    个

本路径采用基础+案例方式,助你解开对界面优化、数据储存、屏幕适配的疑惑。6小时团购项目实战加最新版本Swift讲解,让你掌握更多iOS开发技巧。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师