2012-03-25 17 views
5

Attualmente ho un progetto monotouch che utilizza una combinazione di uno storyboard e alcuni controller xib-less (ViewControllers che non hanno uno xib o riferimento corrispondente nello storyboard) (ad esempio Monotouch .Dialogo).Monotouch Storyboard con controller vista xib-less

Tutto funziona bene richiamando dallo Storyboard ViewControllers a quelli senza XIB. Il problema che ho è quando ho bisogno di chiamare da un ViewController senza Xib in uno Storyboard ViewController.

Esempio flusso:

  • Storyboard
    • TabViewController
      • FirstViewController DialogViewController (non in Storyboard/xib-meno)
        • AnotherViewController

Il problema è quando il caricamento del AnotherViewController es.

Ho dovuto creare un costruttore vuoto su AnotherViewController per rendere ciò possibile. Questa vista quindi viene caricata, ma è solo un UIViewController vuoto (non quello nella mia Storyboard). Non riesco a impostare una Segue tra MT.Dialog con AnotherViewController in Interface Builder perché DialogViewController viene creato a livello di programmazione.

La soluzione alternativa è dimenticare completamente AnotherViewController nello Storyboard e crearne solo uno anch'esso a livello di codice, ma è un vero peccato che non riesca a combinare/mixare le visualizzazioni di Storyboard con quelle programmatiche.

Qualsiasi suggerimento (o frammenti di C# monotouch) sarebbe molto apprezzato!

+0

Non sono sicuro di aver capito correttamente: vuoi far apparire il tuo 'AnotherViewController' - che è stato progettato con IB nello storyboard - da un controller di visualizzazione progettato in modo programmatico, giusto? – psycho

risposta

0

È possibile creare un controller da Storyboard, basta aggiungere identifier ad essa (in Storyboard) e poi fare:

YourController *c = 
[storyboard instantiateViewControllerWithIdentifier:@"YourIdentifier"]; 

non dimenticate di inizializzare le istanze in viewDidLoad, perché initWithNibName saranno mai chiamati

Problemi correlati