2016-12-30 105 views
0

這個iOS的斯威夫特代碼在運行時生成以下錯誤:線程1:信號SIGABRT斯威夫特卡倫特3

線程1:信號SIGBRT

誰能幫助我確定可能的原因和解決辦法?

注:對Amazon.com的網址是硬編碼僅爲舉例的目的

import WatchKit 
import Foundation 

class InterfaceController: WKInterfaceController { 
    //Outlets erstellen 
    @IBOutlet var timer: WKInterfaceTimer! 
    @IBOutlet var slider: WKInterfaceSlider! 
    @IBOutlet var button: WKInterfaceButton! 

    //Outlet-Action, bei Änderung des Slider Werts 
    @IBAction func slider(_ value: Float) { 
     //Button kann genutzt werden 
     button.setEnabled(true) 
     //Text für den Button wird bestimmt 
     let roundedValue = Int(round(value)) 
     UserDefaults.standard.setValue(roundedValue, forKey: "countdown") 
     let text: String = "FIRE (\(roundedValue)s)" 
     button.setTitle(text) 
    } 

    //Outlet-Action, wenn der Button gedrückt wird 
    @IBAction func fire(){ 
     //Timer Farbe wird geändert, um diesen zu sehen 
     let swiftColor = UIColor(red: 1, green: 222, blue: 113, alpha: 1) 
     timer.setTextColor(swiftColor) 
     //Button wird deaktiviert + Button Text nun ... 
     button.setTitle("...") 
     button.setEnabled(false) 
     //Timer Wert abfragen 
     var countdown: Int = (UserDefaults.standard.value(forKey: "countdown")! as! Int) 
     //Timer starten 
     timer.setDate(NSDate(timeIntervalSinceNow: TimeInterval(countdown)) as Date) 
     timer.start() 
     //NSTimer mit 1 Sek Intervall 
     var clock = Timer.scheduledTimer(timeInterval: 1.0, target: self, selector: "countdown", userInfo: nil, repeats: true) 

     func countdown() { 
      countdown -= 1 
      if countdown == 4{ 
       //HTTP-Request 
       var request = URLRequest(url: URL(string: "http://amazon.com")!) 
       request.httpMethod = "POST" 
       let session = URLSession.shared 
       session.dataTask(with: request) {data, response, err in 
        print("Entered the completionHandler") 
        }.resume() 
       //Timer auschalten 
       let schwarz = UIColor(red: 0, green: 0, blue: 0, alpha: 1) 
       timer.setTextColor(schwarz) 
       //Button in Normalzustand 
       button.setTitle("FIRE (0s)") 
       button.setEnabled(true) 
       //Slider auf Standart 
       slider(0) 
      } 
     } 


    } 

    override func awake(withContext context: Any?) { 
     super.awake(withContext: context) 

    } 

    override func willActivate() { 
     // This method is called when watch view controller is about to be visible to user 
     super.willActivate() 
    } 

    override func didDeactivate() { 
     // This method is called when watch view controller is no longer visible 
     super.didDeactivate() 
    } 

} 
+0

確保故事板上沒有元素正在尋找代碼中不存在的插座 – ntoonio

+1

代碼中的哪個位置發生錯誤? –

+0

不通!它轉到一個Thread1文件並在那裏顯示。 –

回答

0

嘗試清潔您的項目。如果這不起作用,請重新創建您在創建項目時創建的任何pod文件。此外,請檢查您是否有多個插座或針對同一個對象的操作。