ios - protocol - structs in swift
Swift-realiza Segue (2)
if (view.annotation.title as String!) == "Helgoland " {
currentLong = 7.889021
currentLat = 54.180210
url = "google.com"
let alertController: UIAlertController = UIAlertController(title: "Change Map Type", message: nil, preferredStyle: UIAlertControllerStyle.Alert)
let cancelAction: UIAlertAction = UIAlertAction(title: "Back", style: UIAlertActionStyle.Cancel, handler: nil)
let button1action: UIAlertAction = UIAlertAction(title: "Product Page", style: UIAlertActionStyle.Default, handler: { (action: UIAlertAction!) -> () in
performSegueWithIdentifier("showShop", sender: self)
})
let button2action: UIAlertAction = UIAlertAction(title: "Video", style: UIAlertActionStyle.Default, handler: { (action: UIAlertAction!) -> () in
youtubeVideoID = "XX"
UIApplication.sharedApplication().openURL(NSURL(string: "http://www.youtube.com/watch?v=/(youtubeVideoID)"))
})
alertController.addAction(cancelAction)
alertController.addAction(button1action)
alertController.addAction(button2action)
self.presentViewController(alertController, animated: true, completion: nil)
}
Siempre me sale un error con
"Uso implícito de ''yo'' en el cierre; uso ''yo''. para hacer explícita la captura semántica "
pero si configuro self.view
, también falla.
Para Swift 3
_ = self.navigationController?.popToRootViewController(animated: false)
Tendrás que usar explícitamente el yo:
self.performSegueWithIdentifier("showShop", sender: self)
Y para Swift 3 (thx @KingChintz):
self.performSegue(withIdentifier: "showShop", sender: self)