2015-05-15 16 views
7

Ho due viste come questo a Story Consiglio:iOS: Ritornare alla vista precedente

[Vista1] -> [Navigation Controller] -> [View2]

Per andare da Visualizzazione1 (ha Tableview) Per visualizzare 2, faccio questo clic su una riga su View1:

self.performSegueWithIdentifier("showmyview2", sender:self) 

Questo funziona.

Ora ho un pulsante sul View 2, che se cliccato dovrebbe riportarmi alla visualizzazione precedente cioè View 1.

ho provato questo:

navigationController!.popViewControllerAnimated(true) 

Ma questo non funziona. Come posso tornare alla prima vista?

+0

è il tuo performsegue è controller pushview o controller presentview ?? – Mukesh

+0

miuku> non sono sicuro, dove lo vedo? Il NavigationController è la classe UINavigationController in Identity Inspector. Spiacente, io sono nuovo di iOS, Swift – Jasper

+1

il tuo View1 non è nella gerarchia di navigationcontroller, quindi non è possibile chiamare popViewController su navigationController per tornare a View1 –

risposta

30

Prima aggiungere un controller di navigazione al primo view1 attraverso storyboard. (Editor-> Embed controller di navigazione), se la navigazione non è presente.

O

self.dismissViewControllerAnimated(true, completion: nil); 

chiamare questa funzione e cercare invece di navigazione popviewcontroller

+0

Grazie mille per quello che ha funzionato! – Jasper

+5

** La sintassi di SWIFT 3.0 ** è cambiata in questo modo; 'self.dismiss (animato: true, completamento: nil)' – Trevor

5

Usa questo codice per presentare prima vista nella vostra azione pulsante:

let storyboard = UIStoryboard(name: "Main", bundle: nil) 
let vc = storyboard.instantiateViewControllerWithIdentifier("FirstView") as! TableViewController 
self.presentViewController(vc, animated: true, completion: nil) 

E non dimenticare di dare Id al vostro primo punto di vista.

Seleziona la prima vista in StoryBoard e fai quindi clic su Identity Inspector e puoi assegnare l'ID di StoryBoard come mostrato nell'immagine sottostante.

enter image description here

+0

Dharmesh> Dopo aver selezionato View1 nello storyboard, non vedo un modo per fornire l'ID in Identity o Attribute Inspector. – Jasper

+0

Controlla la mia risposta aggiornata. –

+0

Dharmesh Grazie - ha funzionato. – Jasper

0

self.dismiss (animato: è vero, il completamento: zero); funzionerà in swift 3

Problemi correlati