使用 NSDate 获取 nil 值(致命错误:解开可选值时意外发现 nil)



我是iOS开发的新手,但收到错误:

致命错误:解开可选值时意外发现 nil

xCode for self (NSDate) 底部的值是正确的,但 dateStringFormatter 和 d 显示的是内存地址而不是值,并且 dateString 保持不变。有什么想法吗?我之前有这段代码工作,并且在错误提交后一直在尝试修复它,所以我在想也许与故事板/不会显示在代码中的东西有关?代码如下:

extension NSDate{
convenience
init(dateString:String) {
    let dateStringFormatter = NSDateFormatter()
    dateStringFormatter.dateFormat = "hh:mm"
    dateStringFormatter.locale = NSLocale(localeIdentifier:
    "en_US_POSIX")
    let d = dateStringFormatter.dateFromString(dateString)!
    self.init(timeInterval:0, sinceDate:d)
    }
}
class EditViewController: UIViewController, UITableViewDelegate,
NSFetchedResultsControllerDelegate {
 ........
@IBAction func btnSetDate(sender: UIButton) {
    let newDate = NSDate(dateString: "10-33")
    StartDatePicker.date = newDate
   }
}

谢谢!

更改了日期字符串文本或格式。进行以下更改之一:

let newDate = NSDate(dateString: "10:33")
// or
dateStringFormatter.dateFormat = "hh-mm"

最新更新