委托和数据源的工作原理

时间:2016-04-14 01:32:58

标签: ios uitableview delegates

只想知道iOS委托和数据源的工作原理。 例如,当我在某些ViewController中调用[tableView numberOfRowsInSection]时。

似乎它正在返回我[tableView.dataSource numberOfRowsInSection]

但是如何在不返回[tableView.dataSource numberOfRowsInSection]的情况下调用[tableView numberOfRowsInSection]?

我可以知道代码背后发生了什么吗?提前谢谢。

1 个答案:

答案 0 :(得分:0)

在iOS中,委托和数据源实现为委托模式。它们之间的不同之处在于它与委托对象的负责和关系。委托是用户界面的控制,而数据源是数据的控制。他们都必须采用协议,其中定义了一组与彼此相关的方法。

Table View委托和数据源的实现旨在采用使用委托模式的最佳实践之一。委托设计模式有时会作为回调函数响应,但是,在表视图数据源和委托的情况下,它允许您控制和自定义表视图的属性和行为。

您可以看到的一个示例是,实现委托和数据源允许您自定义表视图属性,例如数字或节,行数,单元格类型以及单击行等行为