無法在Interface Builder中將聲明爲@IBOutlet的CustomView
的代理屬性連接到ViewController
- 無法建立連接。在Swift中Interface Builder,@IBOutlet和委託和數據源協議
下面的代碼
class CustomView: UIView {
@IBOutlet var delegate: CustomViewDelegate?
}
@objc protocol CustomViewDelegate {
...
}
class ViewController: UIViewController, CustomViewDelegate {
...
}
@objc
被使用,因爲swift protocol, IBOutlet property cannot have non-object type,不知道爲什麼protocol CustomViewDelegate: class {}
不起作用。
其他人碰到類似的東西?
貴'UIViewController'在Interface Builder具有同級車專門設置爲'ViewController'?此外,它通常是一個要求(最後我檢查),「@ IBOutlet」屬性被定義爲隱式解包類型,如下所示:「CustomViewDelegate!」。這允許它們在實例化時爲'nil',同時允許您在連接完成後無需綁定就可以使用它們。 – 2014-10-03 13:58:16