【发布时间】:2011-04-19 09:50:08
【问题描述】:
谁能告诉我 UITableViewDelegate 和 UITableViewDatasource 的区别?
【问题讨论】:
标签: iphone delegates uitableview
谁能告诉我 UITableViewDelegate 和 UITableViewDatasource 的区别?
【问题讨论】:
标签: iphone delegates uitableview
充当表格的代表意味着您可以回答有关表格布局和用户在表格视图上执行的操作的请求。 Layout 方法包括 tableview 询问行的高度、页眉和页脚、按钮的外观等。Action 方法包括用户选择一行并开始并结束对一行的编辑。
充当表格的数据源意味着您为表格的部分和行提供数据,并且您对更改表格数据的消息采取行动。绘制表格时,数据源被要求提供单元格的数据,被告知用户已要求删除一行,并被告知用户已编辑的行的新值。
【讨论】:
【讨论】:
UITableViewDelegate 是你在你的类上实现的用于接收UITableView 事件的协议。 UITableViewDataSource 是您实施的一种协议,用于为您的 UITableView 提供数据。
因此,使用UITableViewDelagate 协议,您将能够响应以下事件:选择行、编辑和其他一些事件。
使用UITableViewDataSource 协议,您将能够将数据输入您的表格。在此协议上定义的消息将由UITableView 类自动调用。
【讨论】:
数据源采用UITableViewDataSource协议,delegate采用UITableViewDelegate协议。 UITableViewDataSource 有一个可选方法,数据源通过该方法告诉表格视图它有多少个部分(默认为一个);它还有一个必需的方法,通过它告诉表格视图每个部分有多少行。 UITableViewDelegate 协议声明了一个委托必须实现的方法,以返回表格视图在绘制特定行时使用的单元格对象。 (“表格视图单元格”提供了有关此委托任务的更多详细信息。)它还允许委托修改表格视图的可见方面。这两种协议还包括用于响应选择和点击附件视图以及管理单元格的插入、删除和重新排序的可选方法。
首先学习基础知识! - TableView Guide
【讨论】: