swift - 断言 viewController 是其 tableView 的委托(delegate)和数据源

标签 swift uitableview uiviewcontroller swift3 assert

作为完整性检查,我想在 viewDidLoad 中断言 UITableViewController(即 self)都设置为 dataSourcetableViewdelegate。我怎样才能把它放在 Swift 3 中,在 Swift 3 中(与 Objective-C 不同)需要额外的类型转换?这仍然会导致语法错误:

assert(tableView.dataSource == self)
assert(tableView.delegate   == self)

最佳答案

您可以使用对象实例相等运算符“===”来做到这一点:

assert(tableView.dataSource === self)
assert(tableView.delegate === self)

关于swift - 断言 viewController 是其 tableView 的委托(delegate)和数据源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39796669/

相关文章:

ios - 具有自定义 TableViewCell 的随机信号 Sigabrt

iphone - 如何以编程方式调用 UITableView 的编辑属性

ios - 在 Swift (Xcode 6) 的其他 View 中使用来自 View 的输入文本

ios - 如何更新 iOS 中覆盖 supportedInterfaceOrientations 函数的旧 Swift 代码?

ios - TableView 复制图像?

ios - 什么是快速错误断点?如何使用它 ?所有异常错误都包含快速错误吗?

ios - 我可以查明单元格何时排队吗?

ios - 将项目引用添加到 Swift iOS XCode 项目并调试

ios - 当前 View Controller *没有*透明度

ios - 如何使用 UIActionSheet 确认删除 UITableViewCell