Enums 在展开可选值错误时获取nil-在Swift中保存枚举值时

Enums 在展开可选值错误时获取nil-在Swift中保存枚举值时,enums,swift2,nscoder,Enums,Swift2,Nscoder,我有以下事件模型: class Event: NSObject, NSCoding { var name: String var category: Category enum Category: String { case Call = "Call" case Coaching = "Coaching" } } 当用户更新其对类别枚举的选择时,它会崩溃,错误为:致命错误:在展开可选值时意外发现nil。 然而,当我打印“所选类别”时,我得到了正确的回答:“呼

我有以下事件模型:

class Event: NSObject, NSCoding {

  var name: String
  var category: Category

  enum Category: String {
    case Call = "Call"
    case Coaching = "Coaching"
  }
}
当用户更新其对类别枚举的选择时,它会崩溃,错误为:致命错误:在展开可选值时意外发现nil。 然而,当我打印“所选类别”时,我得到了正确的回答:“呼叫。”

在将选择字符串保存为枚举选项时,我是否遗漏了什么?提前感谢大家的时间

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
  if saveButton === sender {
    let name = eventNameTextField.text ?? ""
    let category = eventCategoryLabel.text!

    if let cat = Event.Category(rawValue:category) {
      print("selected category: \(cat)")
      event = Event(name: name, category: cat)
    }    
  }
}