gpt4 book ai didi

ios - 数据源和委托(delegate)选项

转载 作者:行者123 更新时间:2023-11-28 10:52:09 26 4
gpt4 key购买 nike

在创建 TableView 时,ViewController 类采用“UITableViewDelegate”和“UITableViewDataSource”协议(protocol)。要创建 TableView ,我们必须受益于这些协议(protocol)的方法。我明白这一点。

但是,在创建 TableView 时,我们还选择了tableview-data source和tableview-delegate选项,并通过拖动将它们与ViewController类匹配。这些在 Storyboard文件中执行。

为什么这个匹配过程很重要?

我们为什么要执行这个匹配过程?

最佳答案

你不需要同时遵守这两个协议(protocol),也不需要在Storyboard中设置delegatedataSource,它也可以通过编程方式完成。

只有当您在 ViewController 中使用 UITableView 时,您才需要执行这些操作,而该 ViewController 不是 UITableViewController 的子类。 UITableViewController 会自动为您处理是否符合这两种协议(protocol)。

你需要设置delegate/dataSource到某个ViewController,因为系统需要知道,哪个类'delegate/dataSource 设置 TableView 时需要调用的方法。如果您在同一个 Storyboard 中有多个带有 TableView 的 View Controller ,如果没有为当前 View Controller 设置委托(delegate)/数据源,系统将不知道它需要调用哪个类表格 View 。

是否符合UITableViewDelegate协议(protocol)是可选的,如果你只需要在表格 View 上显示数据,但不需要用户与之交互,你只需要符合UITableViewDataSource 协议(protocol)。这是在表格 View 中设置部分/单元格的数量以及设置它们的内容所必需的。

关于ios - 数据源和委托(delegate)选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45672250/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com