2013-07-24 12 views
12

Ho una classe personalizzata che eredita da UIControl, per ottenere eventi di tocco. È fondamentalmente una raccolta di altri controlli che agiscono come uno. Sto convertendo la mia app da xibs a uno storyboard. È stato per lo più indolore, tranne questo.Come posso ottenere un UIControl personalizzato per partecipare a un seguito come azione push?

Trascino un UIView nella mia scena, cambio la classe nel mio controllo personalizzato, collegalo alle prese sul mio ViewController. Quello che voglio fare con il controllo quando viene cliccato è eseguire un passaggio (push) su un altro ViewController. Ma gli outlets del designer non sono lì per il mio UIControl per impostare il seguito.

È possibile farlo? Se sì, cosa devo fare alla classe per abilitarla?

risposta

7

Non credo. Guardando il riquadro Connessioni ispettore, UIButton e UIBarButtonItem casi ottenere un trattamento-una speciale "segues innescato" l'azione è possibile connettersi al controller di vista adiacenti:

UIButtons can trigger segues

Mentre cambiare la classe di immagine per un discendente di UIControl marche la suite standard di eventi di controllo disponibili, sfortunatamente Interface Builder non ti permette di collegare un seguito. Il meglio che puoi fare è creare un segue manualmente innescata dalla visualizzazione del controller ad un altro, quindi collegare il controllo personalizzato a un metodo IBAction che esegue la segue a livello di codice:

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

IBAction for manually triggering segue

Problemi correlati