2017-02-15 8 views
-2

Swift 3에서 json 데이터를 구문 분석하려고하는데이 오류가 발생합니다. 스레드 1 오류에 대해 많이 읽었지만 스레드 2/8/9 오류가 있습니다.thread 2/8/9 : signal sigabrt error

@IBOutlet weak var mainTextView: UITextView! 
    @IBAction func onClick(_ sender: Any) { 
     let urlString: String = //my api, IT IS CORRECT 

     let url = URL(string: urlString) 
     URLSession.shared.dataTask(with:url!) { (data, response, error) in 
      if error != nil { 

      } else { 
       do { 

        let parsedData = try JSONSerialization.jsonObject(with: data!, options: []) as! [String:String] 


        self.mainTextView.text = parsedData["year"] as String? 
       } catch let error as NSError { 
        print(error) 
       } 
      } 

      }.resume() 
    } 

또한 앱 전송 보안을 사용하도록 설정했습니다. Pls 나에게 조언을 제공합니다. 여기 는 PrtScn을한다 : 이 http://ipic.su/img/img7/fs/OSXElCapitan-2017-02-15-18-13-40.1487175789.png http://ipic.su/img/img7/fs/OSXElCapitan-2017-02-15-18-26-38.1487176011.png

+1

포스트를 Xcode 콘솔에 기록되는 충돌 로그 – dan

+0

이미지 게시를 중단하십시오. 디버거 콘솔에서 오류 및 스택 추적을 복사하여 붙여 넣어 [편집]하십시오. – rmaddy

+0

thx,이 코드를 편집하려면 어떻게해야합니까? – Burning

답변

1

두 번째 스크린 샷에서 오류 메시지가 (만 메인 스레드에서 실행) 주 스레드에서 텍스트보기를 업데이트하는지를 설명 :

DispatchQueue.main.async { 
    self.mainTextView.text = parsedData["year"] as? String 
} 
+0

Thx 많은 남자, 그것은 작동합니다! – Burning

관련 문제