2013-07-24 21 views
12

我有一個繼承自UIControl的自定義類,以獲取觸摸事件。它基本上是一組其他控件的集合,可以作爲一個整體。我正在將我的應用程序從xibs轉換爲故事板。除此之外,這幾乎是無痛的。如何獲得自定義的UIControl作爲push操作參與segue?

我將一個UIView拖入我的場景中,將該類更改爲我的自定義控件,將其掛接到我的ViewController上的插座。點擊時我想對控件執行的操作是向另一個ViewController執行(push)segue。但設計師的網點並不是爲了我的UIControl來設置賽格。

可以做到這一點嗎?如果是這樣,我該怎麼做才能啓動該課程?

回答

7

我不這麼認爲。縱觀連接督察窗格中,UIButtonUIBarButtonItem情況下得到特殊待遇,額外的「觸發塞格斯」的行動,你可以連接到鄰近的視圖控制器:

UIButtons can trigger segues

雖然更改視圖的類的UIControl品牌後代可用的標準控件事件套件,不幸的是Interface Builder不允許你連接一個segue。你能做的最好的是創建從視圖控制器到另一個手動觸發SEGUE,那麼您的自定義控制連接到IBAction方法編程執行SEGUE:

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

IBAction for manually triggering segue