2014-12-06 12 views
5

Sto lavorando a un'applicazione rapida e ho creato collegamenti ad altre viste utilizzando presentViewController ma non riesco a capire come passare le variabili. Come posso passare le variabili alla nuova vista?Passare variabili con PresentViewController in Swift

@IBAction func WorkoutPressed(sender: AnyObject) { 
    let storyBoard = UIStoryboard(name: "Main", bundle:nil) 
    let workoutView = storyBoard.instantiateViewControllerWithIdentifier("workoutView") as WorkoutViewController 
    self.presentViewController(workoutView, animated: false, completion: nil) 
    //self.navigationController?.pushViewController(workoutView, animated: true) 
} 

Grazie

+3

'workoutView.someVariable =" sì, è così semplice "' –

+0

Quindi, prima di self.presentViewController, ho una riga che può aggiungere parametri? Dove posso impostare quali variabili sono i parametri? – Marcus

+2

Perché li chiami parametri? Sono variabili, anche se le si imposta dall'esterno dell'oggetto. Se viewController ha una variabile puoi impostarla. O hai impostato le variabili di WorkoutViewController in privato? --- Ti consiglio di modificare la tua domanda per mostrare un esempio di una variabile che non puoi impostare. Ci sono un paio di possibilità che ti impediscono di impostare la variabile dall'esterno. Quindi forse hai incontrato uno di questi. Ma devi mostrare un codice reale o non possiamo aiutarti. –

risposta

8

Questo è più facile di quanto si pensi: non ti servono per passare i parametri perché è possibile accedere alle variabili di classe del prossimo controller della vista direttamente.

Cioè, si può fare qualcosa di simile:

workoutView.myVar = myVal 

E, quando che i carichi vista, myVar avranno il valore myVal. (Non dimenticare di dichiararlo in WorkoutViewController, però).

Problemi correlati