2016-02-14 14 views

Antwort

3

Vorbereitung für den Übergang kann Daten entlang passieren.

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) { 
     if (segue.identifier == "showUpdate") { 

      if let vc: DestinationVC = segue.destinationViewController as? DestinationVC { 
        vc.variable = variableToPass 
      } 

     } 
} 
6

Die performSegueWithIdentifier Methode nimmt zwei Argumente, 1. segue Kennung, 2. der Parameter, den Sie passieren, werden die vom Typ ANYOBJECT ist?

@IBAction func update(sender: AnyObject) { 

    self.performSegueWithIdentifier("showUpdate", sender: sender) 
} 

Dann in der prepareForSegue Methode, können Sie die Segue Kennung prüfen und den Sender-Parameter auf die Art werfen Sie in früher übergeben.

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { 
    if segue.identifier == "showUpdate" { 
     guard let object = sender as? ObjectToUpdateType else { return } 
     let dvc = segue.destinationViewController as! DestinationViewController 
     dvc.objectToInject = object 
    } 
} 
7
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { 
     if segue.identifier == "ExampleSegueIdentifier" { 
      if let destinationVC = segue.destinationViewController as? ExampleSegueVC { 
       destinationVC.exampleStringProperty = "Example" 
      } 
     } 
    } 
Verwandte Themen