将IBAction连接到自定义类

时间:2017-11-05 18:24:05

标签: ios xcode interface-builder

我写了一个名为PressableView的自定义类。它识别分接头,然后在其委托对象上调用协议功能。由于它是UIView的子类,因此默认情况下不允许连接IBAction。 我想知道是否可以将视图控制器内部的一个函数连接到对象中,因此它可以调用该方法 - 就像使用UIButton一样。

我已经尝试过这样的事情:

class PressableView: UIView {
    // ...
    @IBOutlet var action: (() -> Void)?
    // ...
}

...但是,Xcode不允许该类型为IBOutlet

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

PressableView父类更改为UIControl类,然后您可以连接操作并处理它。

UIControl仅是UIView类的子类。所以你也将拥有UIView的所有属性。

class PressableView: UIControl {
     @IBAction func uicontrolEventAction(_ sender: Any) {
    }
}

enter image description here

enter image description here