【问题标题】:How to link Table dataSource and delegate outlets to UITableViewController?如何将表数据源和委托出口链接到 UITableViewController?
【发布时间】:2017-03-13 18:23:26
【问题描述】:
我是 Swift/iOS 开发的新手。
我的storyboard 中有一个UITableView,我想填充一些数据。为此,我创建了一个继承自UITableViewController 的类。实现还没有完成,但我的理解是,通过从这个类继承,我可以为dataSource 和delegate 提供一个IBOutlet。
当我尝试将插座拖到源文件中时,我没有得到我之前测试时得到的插入点。见下图:
我需要做什么才能将这个类定义为UITableView 的处理程序?
【问题讨论】:
标签:
ios
swift
uitableview
storyboard
uistoryboard
【解决方案1】:
将您的 viewController 设置为从 UIViewController 继承,而不是从 UITableViewController 继承(看起来您的 IB 是这样设置的)。
不要忘记在界面生成器上将您的类设置为ZeroconfTableController。
然后,您将能够设置delegate 和datasource。注意:delegate 和 datasource 不会创建 IBOutlets。
按以下方式分配delegate 和dataSource:
还要确保您的 viewController 符合协议。
class ZeroconfTableController: UIViewController, UITableViewDataSource, UITableViewDelegate {
【解决方案2】:
如果您使用自己的UITableView,则继承自UIViewController,而不是UITableViewController。
但是,如果您想在情节提要中使用UITableViewController(我个人不使用),那么请从UITableViewController 继承。在这种情况下,您不必连接UITableViewDataSource 或UITableViewDelegate。
【解决方案3】:
在您的故事板中,选择 UITableView 并将其更改为您的 UITableViewController 子类的名称。然后你不需要做任何链接的东西。