2015-12-02 124 views
1

出現在Swift中,您無法創建符合協議的IBOutlet。我目前的解決辦法是創建)型AnyObject的一個IBOutlet,並符合我的協議,然後說變量設置爲在awakeFromNib(出口的變量,像這樣:符合協議的IBOutlet?

@IBOutlet private var fooOutlet: AnyObject! 
private var foo: FooProtocol! 

override func awakeFromNib() { 
    super.awakeFromNib() 

    foo = fooOutlet as? FooProtocol 
} 

我的問題是:有沒有更好的方法完成這個?或者這是唯一可以在Swift中完成的方法?

回答

1

這將工作

@objc(FooProtocol) 
protocol FooProtocol {}