2014-11-23 10 views
11

Ho una singola applicazione di visualizzazione che si connette per analizzare e verifica le informazioni di accesso dell'utente e aggiorna una UILabel che dice "Sì, hai eseguito l'accesso con successo" - Ora voglio che navighi su una nuova vista (che sarà la parte principale dell'app).Swift: vai al nuovo ViewController usando il pulsante

Ho trascinato un nuovo controller di visualizzazione sullo storyboard e Ctrl-trascinare il pulsante e collegarlo al nuovo controller con show. Tuttavia, nel momento in cui carico l'app e faccio clic sul pulsante, si passa direttamente alla nuova visualizzazione. Ho bisogno di andare lì solo se viene attivata la parte destra dell'istruzione if-else.

Ha senso? Grazie per l'aiuto ragazzi. molto apprezzato.

EDIT

L'istruzione if è:

if usrEntered != "" && pwdEntered != "" { 
     PFUser.logInWithUsernameInBackground(usrEntered, password:pwdEntered) { 
      (user: PFUser!, error: NSError!) -> Void in 
      if user != nil { 
       self.messageLabel.text = "You have logged in"; 
      } else { 
       self.messageLabel.text = "You are not registered"; 
      } 
     } 
    } 

e si trova nel file di ViewController.swift

+0

Qual è la tua dichiarazione if-else e dove si trova? –

+0

@ MattyAyOh aggiunto alla domanda originale – DannieCoderBoi

+0

il bit che è: self.messageLabel.text = "Hai effettuato l'accesso"; - Voglio reindirizzare a una nuova vista – DannieCoderBoi

risposta

46

Prima di tutto come spiego in this answer, è necessario trascinare la segue dalla in generale UIViewController al prossimo UIViewController, ovvero non dovresti connettere specificamente UIButton (o qualsiasi IBOutlet per quella materia) al prossimo UIViewController se il condizionale della transizione:

storyboard segue

Avrai anche bisogno di assegnare un identificatore al seguito. Per fare ciò, è possibile selezionare la freccia segue quindi digitare un identificatore all'interno del pannello di destra:

segue identifier

Poi per eseguire la segue reale, utilizzare la funzione performSegueWithIdentifier all'interno della vostra condizione, in questo modo:

if user != nil { 
    self.messageLabel.text = "You have logged in"; 
    self.performSegueWithIdentifier("segueIdentifier", sender: self) 
} else { 
    self.messageLabel.text = "You are not registered"; 
} 

dove "followsIdentifier" è l'identificatore che hai assegnato ai tuoi passi all'interno dello storyboard.

+0

(E sì, aggiornerò quell'immagine per riflettere l'ultimo Xcode in un sec.) –

+0

Ho appena fatto ciò, non mi ha chiesto di specificare un identificatore ? È un altro passo? scusa sono nuovo allo sviluppo di ios – DannieCoderBoi

+0

ah Trovato. e funziona Grazie :) – DannieCoderBoi

Problemi correlati