【问题标题】:Swift: Declaring a delegate in StructSwift:在 Struct 中声明一个委托
【发布时间】:2016-06-06 20:36:09
【问题描述】:

我想在 Swift Struct 中声明一个委托。例如在 viewController 中你可以加载委托:

class ViewController : UIViewController, UITableViewDelegate 

但例如在 Struct 文件中我尝试相同:

struct sample:UITableViewDelegate

但是我收到了这个错误:

Non-Class type 'sample' cannot conform to class protocol NSObjectProtocol

如何将委托添加到 Struct 文件?

非常感谢您的帮助。

【问题讨论】:

    标签: ios swift struct delegates


    【解决方案1】:

    swift中的结构只能符合没有标记为带有关键字class的类协议的协议,例如CustomStringConvertible协议

    【讨论】:

      【解决方案2】:

      错误说明了一切。如果你不是一个类,你就不能遵守 NSObjectProtocol(所有协议的父类)!

      考虑使用 vanilla 类,如果它必须符合协议,那么它首先不应该是结构!

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-12-17
      • 1970-01-01
      • 1970-01-01
      • 2020-05-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多