UITableViewDelegate和UITableViewDatasource之间的区别

时间:2011-04-19 09:50:09

标签: iphone delegates uitableview

有人告诉我UITableViewDelegate和UITableViewDatasource之间的区别吗?

4 个答案:

答案 0 :(得分:26)

的UITableViewDelegate

作为表格的代表,您可以在表格视图中提供有关表格布局用户执行操作的请求的答案。 布局方法包括tableview询问行,页眉和页脚的高度,按钮的外观等等。操作方法包括用户选择行和开始并结束编辑一行

UITableViewDatasource

作为表格的数据源意味着您为表格的各个部分和行提供数据,并且对更改表格数据的消息采取行动。在绘制表格时,要求数据源提供单元格的数据,告知用户要求删除行,并告知用户已编辑的行的新值。

答案 1 :(得分:5)

补充答案,这是委托和数据源中的所有方法的一张表。enter image description here

查看原始答案:delegate and datasource methods for UITableView

答案 2 :(得分:1)

UITableViewDelegate是您在班级上实施的用于接收UITableView个事件的协议。 UITableViewDataSource是您为UITableView提供数据而实施的协议。

因此,使用UITableViewDelagate协议,您将能够响应以下事件:选择行,编辑和其他几个。

使用UITableViewDataSource协议,您可以将数据提供给您的表格。此协议上定义的消息将由UITableView类自动调用。

答案 3 :(得分:1)

数据源采用UITableViewDataSource协议,委托采用UITableViewDelegate协议。 UITableViewDataSource有一个可选方法,数据源通过该方法告诉表视图它有多少个部分(默认为1);它还有一个必需的方法,通过它可以告诉表视图每个部分中有多少行。 UITableViewDelegate协议声明了一种方法,委托必须实现该方法以返回表视图在绘制特定行时使用的单元对象。 (“表视图单元格”提供了有关此委托任务的更多详细信息。)它还允许委托修改表视图的可见方面。这两种协议还包括用于响应附件视图上的选择和点击以及管理单元的插入,删除和重新排序的可选方法。

首先学习基础知识! - TableView Guide