繁体   English   中英

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

[英]How can I get a custom UIControl to participate in a segue as a push action?

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

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

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

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

UIButtons可以触发segue

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

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

用于手动触发segue的IBAction

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM