サービスに接続し、バックエンドからデータを受信しています。コードは次のとおりです。アラートコントローラがメインスレッドでフリーズする
_ = session.dataTaskWithRequest(request, completionHandler: { (data, response, error) in
if response != nil{
var responseREcvd = response as? NSHTTPURLResponse
if responseREcvd?.statusCode == 404 {
let alertControler = UIAlertController(title: "404", message: "Server Down.", preferredStyle: .Alert)
let alertAction = UIAlertAction(title: "OK", style: .Default, handler: nil)
alertControler.addAction(alertAction)
dispatch_async(dispatch_get_main_queue(), {
targetVC.presentViewController(alertControler, animated: true, completion: nil)
})
}
}
アラートが表示されますが、UIがフリーズします。 OKアクションボタンを押すと、アクションは呼び出されません。
はこれです問題は解決しましたか? –
@USER_NAMEはい問題は修正されました。問題は、画面に隠れていたuiviewのインスタンスがもう1つあったことです。アラートコントローラの[OK]ボタンを押すことができるように、それを削除しなければなりませんでした。 –