Thread1:Swift 3 中的信号 SIGABRT

Posted

技术标签:

【中文标题】Thread1:Swift 3 中的信号 SIGABRT【英文标题】:Thread1: Signal SIGABRT in Swift 3 【发布时间】:2016-12-30 12:11:10 【问题描述】:

ios Swift 代码在运行时生成以下错误:

线程 1:信号 SIGBRT

谁能帮我确定可能的原因和解决方法?

注意:Amazon.com 的 URL 仅作为示例进行硬编码。

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()
    


【问题讨论】:

确保情节提要上没有元素正在寻找代码中不存在的出口 你的代码哪里出现了错误? 无处可去!它进入一个 Thread1 文件并在那里显示。 @ntoonio 没有任何未连接的网点 您是否右键单击情节提要中的元素以查看所有连接的插座? (只是为了确保我们相互理解) 【参考方案1】:

尝试清理您的项目。如果这不起作用,请重新创建您在制作项目时可能创建的任何 pod 文件。此外,请检查您是否对同一对象有多个出口或操作。

【讨论】:

以上是关于Thread1:Swift 3 中的信号 SIGABRT的主要内容,如果未能解决你的问题,请参考以下文章

Swift”线程 1:PresentViewController 中的信号 SIGABRT

Swift 3“线程 1:信号 SIGABRT”错误

无法保存数据 --- Swift、IOS、Core 数据 --- 线程 1:信号 SIGABRT

信号

linux信号解释

kill 信号大全