在Swift中,您无法创建符合协议的IBOutlet。我目前的工作是创建一个AnyObject类型的IBOutlet和一个符合我的协议的变量,然后将所述变量设置为awakeFromNib()中的出口,如下所示:
@IBOutlet private var fooOutlet: AnyObject!
private var foo: FooProtocol!
override func awakeFromNib() {
super.awakeFromNib()
foo = fooOutlet as? FooProtocol
}
我的问题是:有没有更好的方法来实现这一目标?或者这是在Swift中实现这一目标的唯一方法吗?
答案 0 :(得分:3)
这将有效
@objc(FooProtocol)
protocol FooProtocol {}