2015-02-18 3 views
6

Я смог написать UIAlertController для своей кнопки, и он отлично работает, но я не знаю, как переходить на другую страницу, как только я нажму кнопку YES или OK. На данный момент кнопка ДА или ОК не идет никуда.UIAlertController Segue to Different Page (Swift)

@IBAction func SubmitButton(sender: AnyObject) { 


     if a > 28.87 { 


      var alert = UIAlertController(title: "H4 with Guide Pins", message: "Can it be removed?", preferredStyle: UIAlertControllerStyle.Alert) 

      alert.addAction(UIAlertAction(title: "YES", style: UIAlertActionStyle.Default, handler: nil)) 

      alert.addAction(UIAlertAction(title: "NO", style: UIAlertActionStyle.Default, handler: nil)) 

      self.presentViewController(alert, animated: true, completion: nil) 

     } 

     else if data2.text == "" { 


      var alert = UIAlertController(title: "Dimension", message: "Missing Data Input.", preferredStyle: UIAlertControllerStyle.Alert) 

      alert.addAction(UIAlertAction(title: "OK", style: UIAlertActionStyle.Default, handler: nil)) 

      self.presentViewController(alert, animated: true, completion: nil) 

     } 

     else { 


      var alert = UIAlertController(title: "H4 with Guide Pins", message: "Enter Swallow Dimension.", preferredStyle: UIAlertControllerStyle.Alert) 

      alert.addAction(UIAlertAction(title: "OK", style: UIAlertActionStyle.Default, handler: nil)) 

      self.presentViewController(alert, animated: true, completion: nil) 

      self.view.endEditing(true) 

     } 

    } 
+0

о внедрении обработчика вместо nil – BaSha

+0

Хмммм ... Я никогда раньше не использовал обработчик. Как я напишу этот код? – Coder

+0

http://swiftoverload.com/uialertcontroller-swift-example/ – BaSha

ответ

12

Вы можете создать SEGUE в раскадровке, контроль тащит из желтого контроллера представления в верхней части сцены на новый контроллер представления. Затем дайте этому отряду идентификатор в инспекторе. Вы можете вызвать это из обработчика в своем коде.

alert.addAction(UIAlertAction(title:"OK", style: .Default, handler: { action in self.performSegueWithIdentifier("mySegueIdentifier", sender: self) } 
+0

спасибо, что, похоже, хорошо работают. – Coder

+0

Я получил его, чтобы переходить, но как изменить изображение ui, когда вы переходите к другому ViewController? – Coder

+1

Вы можете вызвать prepareForSegue и использовать segue.destinationViewController для установки свойства изображения в следующем контроллере View. –

1

Решение в Swift 3

let alertController = UIAlertController(title: "Email Verification Required", message: "You will receive an email shortly to verify your account this must be done before you can sign in", preferredStyle: .alert) 
let backToSignIn = UIAlertAction(title: "OK", style: .cancel, handler: { action in self.performSegue(withIdentifier: "backToSignIn", sender: self)}) 
alertController.addAction(backToSignIn) 
self.present(alertController, animated: true, completion: nil) 

Где backToSignIn это имя Segue.

Смежные вопросы