簡體   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