如何修复由于线程0错误导致的应用程序崩溃

时间:2017-11-11 15:15:08

标签: ios swift crash

Now我知道如何找出我的应用程序崩溃的原因,请有人帮我修复此崩溃。

enter image description here

这会完成这项工作吗?谢谢你

 switch tempDayHolder
                    {
                    case "Monday":
                        outputWeekdays.append(2)
                    case "Tuesday":
                        outputWeekdays.append(3)
                    case "Wednesday":
                        outputWeekdays.append(4)
                    case "Thursday":
                        outputWeekdays.append(5)
                    case "Friday":
                        outputWeekdays.append(6)
                    case "Saturday":
                        outputWeekdays.append(7)
                    case "Sunday":
                        outputWeekdays.append(1)
                    default :
                        outputWeekdays.append(1)
                    }

如果这是一个基本问题,请道歉。我是一名新手,从在线教程中学习东西,这是我第一次遇到这个问题。

好的,所以我将电话连接到发生崩溃的地方,进入xcode>设备,这就是崩溃日志。来自这里的任何指针都将受到高度赞赏:

https://pastebin.com/mhTteSBC

1 个答案:

答案 0 :(得分:0)

(让我们忽略你的编程风格......就像你说你是新手一样)

来源错过了某些类型。

所以:

1)假设完整的代码是:

import Foundation


var outputWeekdays = [Int]()

class Days {

    init() {
    }
    var daysSelected: String?{
        get{
            if let returnValue  = UserDefaults.standard.object(forKey: "SELECTED_DAY") as? String{
                return returnValue
            }
            else{
                return nil
            }
        }
    }
}
func foo(days: Days){

    let tempDayHolder = days.daysSelected as? String  ?? ""
    switch tempDayHolder
    {
    case "Monday":
        outputWeekdays.append(2)
    case "Tuesday":
        outputWeekdays.append(3)
    case "Wednesday":
        outputWeekdays.append(4)
    case "Thursday":
        outputWeekdays.append(5)
    case "Friday":
        outputWeekdays.append(6)
    case "Saturday":
        outputWeekdays.append(7)
    case "Sunday":
        outputWeekdays.append(1)
    default :
        outputWeekdays.append(1)
    }
}

var days = Days()
foo(days: days)

代码确实有效(我们假设我们以prefs为例....) 我得到了不必要的铸造......

2)做:

    var daysSelected: NSString?{
..

let tempDayHolder = days.daysSelected as String? ?? ""

确实有效。

所以我们需要你的完整代码。