2015-08-29 42 views
1

我對iOS開發相當新穎。我無法弄清楚我爲我的生活做錯了什麼。我得到Swift意外地發現零,同時展開讓變量的可選值

「Thread 1: EXC_BAD_INSTRUCTION (code=EXC_l386_NVOP, subcode=0x0)」

與menCalories變量的錯誤。在調試器中出現錯誤:

「fatal error: unexpectedly found nil while unwrapping an Optional value"

這是我的代碼。任何幫助將非常感激。

@IBAction func calculate(sender: AnyObject) { 

    var ageInt:Int? = age.text!.toInt() 
    var weightInt:Int? = weightLabel.text!.toInt() 
    var heightInt:Int? = height.text!.toInt() 

    if gender.selectedSegmentIndex == 0 { 

     let menCalories:Double = 66.47 + (13.75 * Double(weightInt!)) + (5.0 * Double(heightInt!)) - (6.75 * Double(ageInt!)) 

     calories.text = "\(menCalories)" 

    } 

    if gender.selectedSegmentIndex == 1 { 

    } 

} 
+0

還請確保您的分段控制連接成@IBOutlet薄弱的VA – alex

回答

2

「fatal error: unexpectedly found nil while unwrapping an Optional value"

這種情況發生在Optional沒有任何價值。

你需要做的是在打開包裝之前檢查變量是不是nil

例如,assumming ageIntOptionalnil值:

if ageInt != nil { 
    // Do Something 
} 

或者安全與if let聲明展開值:

if let safeAgeInt = ageInt { 
    // Do Something with safeAgeInt 
} 
相關問題