Я пытаюсь написать класс для синтаксического анализа xml. Я хочу показать предупреждение, когда возникнет некоторая ошибка. Вот мой код:UIAlertController не может быть вызван другим классом
Parse.swift
func parserXml(xmlUrl:String,completionHandler:([(staID: String, staName: String, ava: String, unava: String)]->Void)?)->Void{
self.paraserCompletionHandler = completionHandler
let request = NSURLRequest(URL: NSURL(string: xmlUrl)!)
let urlConfig = NSURLSessionConfiguration.defaultSessionConfiguration()
urlConfig.timeoutIntervalForRequest = 30
urlConfig.timeoutIntervalForResource = 60
let urlSession = NSURLSession(configuration: urlConfig, delegate: self, delegateQueue: nil)
let task = urlSession.dataTaskWithRequest(request, completionHandler: {(data,response,error)->Void in
if error != nil{
print(error?.localizedDescription)
if (error?.code == NSURLErrorTimedOut || error?.code == NSURLErrorNotConnectedToInternet){
let vc = ViewController()
vc.alertView()
}
}else{
let parser = NSXMLParser(data: data!)
parser.delegate = self
parser.parse()
}
})
task.resume()
}
ViewController.swift
func alertView(){
var alertController = UIAlertController(title: "Title", message: "Message", preferredStyle: .Alert)
var okAction = UIAlertAction(title: "OK", style: UIAlertActionStyle.Default)
self.presentViewController(alertController, animated: true, completion: nil)
}
Когда я запускаю мое приложение, мое приложение аварии и показать ошибки
fatal error: unexpectedly found nil while unwrapping an Optional value
EDIT : Xcode Стоп на
self.presentViewController(alertController, animated: true, completion: nil)
Я думаю, причина alertController в ViewController.swift вызывается Parse.swift
может кто-нибудь решить этот вопрос? thx
Xcode должен остановиться на проблемной строке при сбое приложения. Какая линия? – Cristik
stop at self.presentViewController (alertController, анимированный: true, завершение: ноль) – Keith