如何让自定义UIControl作为推送动作参与segue?

age*_*ped 12 iphone xcode interface-builder uistoryboard segue

我有一个继承自UIControl的自定义类,用于获取触摸事件.它基本上是一组其他控件的集合.我正在将我的应用程序从xib转换为故事板.除此之外,它几乎是无痛的.

我将UIView拖入我的场景,将类更改为我的自定义控件,将其连接到我的ViewController上的插座.单击控件时我想要控制的是对另一个ViewController执行(推)segue.但设计师的出口并没有让我的UIControl设置segue.

是否有可能做到这一点?如果是这样,我该怎么做才能启用它?

Ryd*_*kay 8

我不这么认为.纵观连接督察窗格中,UIButtonUIBarButtonItem实例得到特殊待遇,额外的"触发塞格斯"你可以连接到邻近的视图控制器的动作:

UIButtons可以触发segue

虽然将视图的类更改为后代UIControl使得标准的控件事件套件可用,但遗憾的是Interface Builder不允许您连接segue.您可以做的最好的事情是从视图控制器创建一个手动触发的segue到另一个,然后将自定义控件连接到以IBAction编程方式执行segue 的方法:

- (IBAction)performManualSegue:(XYZCustomControl *)sender
{
    [self performSegueWithIdentifier:@"manualPushSegue" sender:sender];
}
Run Code Online (Sandbox Code Playgroud)

用于手动触发segue的IBAction