2016-01-13 4 views
1

Я хочу, чтобы кнопка была отправлена ​​в QaController, если набрано слово Hello, иначе я хочу, чтобы появилось предупреждение, а затем вернемся к главному экрану (viewController), но он не работаетUIButton if statement swift

@IBAction func submitButton(sender: AnyObject) { 
    if TextField.text.containsString("Hello"){ 
     let secondViewController:QaController = QaController() 
     self.presentViewController(secondViewController, animated: true, completion: nil) 
    } else { 
     let alertController = UIAlertController(title: "Thank You!", message: 
      "We appreciate your feedback!", preferredStyle: UIAlertControllerStyle.Alert) 
     alertController.addAction(UIAlertAction(title: "Dismiss", style: UIAlertActionStyle.Default,handler: nil)) 
     self.presentViewController(alertController, animated: true, completion: nil) 
     let homeViewController:ViewController = ViewController() 
     self.presentViewController(homeViewController, animated: true, completion: nil) 
    } 

} 

код прекрасно работает без заявлений IF, так что я не уверен, что случилось:/

Что идет не так, когда я нажмите кнопку Отправить, когда я ставлю «Привет» в ней показывает черный экран с не сообщение об ошибке, вместо отображения правильного вида

Заранее спасибо!

+0

'но это, кажется, не работает' Что это значит: есть ли сообщение об ошибке, если да, какой? Что должно было случиться и что произошло? Всегда указывайте контекст и детали. Благодаря! :) – Moritz

+0

Вы используете раскадровки? Если это так, вам нужно создать экземпляр из раскадровки: storyBoard.instantiateViewControllerWithIdentifier (CONTROLLERIDENTIFIERINSTORYBOARDASSTRING). Возможно, вы создаете контроллер без пользовательского интерфейса. – Orion

+0

сначала проверьте ваше текстовое поле, имеющее контент, или нет, используя печать. –

ответ

0

Я думаю, что вы сравниваете свою строку с нижним регистром, может быть, ваше текстовое поле "hello" не равно "Hello". Поэтому, пожалуйста, сравните, как

if(TextField.text!.caseInsensitiveCompare("Hello") == NSComparisonResult.OrderedSame) 
{ 
    // do your stuff 
} 
else{ 
     print(TextField.text) 
    } 

Надеюсь, это вам поможет.