Cos’è lo StoryBoard in iOS?

Uno storyboard è una rappresentazione visiva dell'interfaccia utente di un'applicazione iOS, che mostra le schermate di contenuto e le connessioni tra queste schermate. Uno storyboard è composto da una sequenza di scene, ognuna delle quali rappresenta un view controller e le sue viste; le scene sono collegate da oggetti segue, che rappresentano una transizione tra due view controller.

Xcode fornisce un editor visivo per gli storyboard, dove è possibile impostare e progettare l'interfaccia utente della vostra applicazione aggiungendo viste come pulsanti, viste tabella e viste di testo sulle scene. Inoltre, uno storyboard permette di collegare una vista al suo oggetto controllore e di gestire il trasferimento dei dati tra i controllori della vista. Usare gli storyboard è il modo raccomandato per progettare l'interfaccia utente della tua applicazione perché ti permettono di visualizzare l'aspetto e il flusso della tua interfaccia utente su un canvas.

main-qimg-be07e245b135a427630c72e444196dac.webp

Una scena corrisponde a un singolo View Controller e alle sue viste

Su iPhone, ogni scena corrisponde a un contenuto a schermo intero; su iPad, più scene possono apparire sullo schermo contemporaneamente, per esempio, usando view controller popover. Ogni scena ha un dock, che visualizza le icone che rappresentano gli oggetti di primo livello della scena. Il dock è usato principalmente per fare connessioni di azione e di uscita tra il view controller e le sue viste.

Come per tutti gli oggetti caricati da uno storyboard, per finire di inizializzare un view controller caricato da uno storyboard si sovrascrive awakeFromNib.

Un Segue gestisce la transizione tra due scene

È possibile impostare il tipo di transizione (per esempio, modale o push) su un segue. Inoltre, puoi sottoclasse un oggetto segue per implementare una transizione personalizzata.

Puoi passare dati tra le scene con il metodo prepareForSegue:sender:, che viene invocato sul controller della vista quando viene attivato un segue. Questo metodo permette di personalizzare la configurazione del successivo controller della vista prima che appaia sullo schermo. Le transizioni di solito avvengono come risultato di qualche evento, come il tocco di un pulsante, ma è possibile forzare programmaticamente una transizione chiamando performSegueWithIdentifier:sender: sul controllore della vista.