12

我有一个继承自 UIControl 的自定义类来获取触摸事件。它基本上是充当一个控件的其他控件的集合。我正在将我的应用程序从 xibs 转换为故事板。除了这个,它基本上是无痛的。

我将一个 UIView 拖到我的场景中,将类更改为我的自定义控件,将它连接到我的 ViewController 上的插座。单击控件时,我想要对控件执行(推送)segue 到另一个 ViewController。但是我的 UIControl 没有设计器中的插座来设置 segue。

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

4

1 回答 1

8

我不这么认为。查看 Connections Inspector 窗格,UIButton实例UIBarButtonItem得到特殊处理——一个额外的“触发的 segues”动作,您可以连接到相邻的视图控制器:

UIButtons 可以触发 segues

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

- (IBAction)performManualSegue:(XYZCustomControl *)sender
{
    [self performSegueWithIdentifier:@"manualPushSegue" sender:sender];
}

用于手动触发 segue 的 IBAction

于 2013-07-24T04:40:10.560 回答