2016-08-04 3 views
0

私は迅速/ Xcodeアプリを書いており、ユーザーが画像をアップロードしてデータベースに保存することができる特定のページを持っています。アップロードが成功すると、保存が成功したことをユーザーに知らせるポップアップをユーザーに与えます。そのビットに関連するコードは次のとおりです。リセットすることとは関係のない機能のため、アプリがリセットされるのはなぜですか?

func displayAlert(title: String, message: String){ //all possible alerts go into here 


     if #available(iOS 8.0, *) { 
      let alert = UIAlertController(title: title, message: message, preferredStyle: UIAlertControllerStyle.Alert) 
      alert.addAction(UIAlertAction(title: "Ok", style: .Default, handler: { (action) in 
       self.dismissViewControllerAnimated(true, completion: nil) 
      })) 
      self.presentViewController(alert, animated: true, completion: nil) 



     } else { 
      // Fallback on earlier versions 
     } 

    } 

Thats呼び出される関数です。

if error == nil{ 
       self.imageToPost.image = UIImage(named: "blah.jpg") 
       self.message.text = "" //input fields are set back to original 

       self.displayAlert("Success", message: "Your image has been uploaded") 

      } else{} 

イメージが正常にアップロードされた場合、そのエラーはnilを返し、コードは実行されます。ユーザーはアラートを取得し、OKをクリックしてから、アプリがリセットされます。それは閉じることはありませんが、すぐにメインページのviewcontroller(このページのviewcontrollerではありません)に行きます。 displayAlert関数は、self.displayAlert( "Success"、.. ...)は問題を修正し、アプリはリセットされません。しかし、この問題の原因となる構文では何も見えません。 (メインページのスワイプファイルにはまったく同じ機能がありますが、コピーして貼り付けても問題ありません)。私は困っています

答えて

1

self.dismissViewControllerAnimated(true, completion: nil)へのあなたの呼び出しはあなたのビューを閉じ、前のViewController(Main)をスタックに表示します。

+0

特定の行を削除すると問題が解決されます。ありがとうございました! –

関連する問題