我正在尝试打印一个更漂亮的timeIntervalSinceDate
版本,例如'10天,6小时......'。但是我没能让NSCalendar组件正常工作。
我在调用中遇到“额外参数'toDate'错误,其中包含以下内容:
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "EE, dd MMM y hh:mm a zzz"
var dateString = "Wed, 08 Jun 2011 11:58 pm EDT"
var date: NSDate = dateFormatter.dateFromString(dateString)!
var now = NSDate()
let calendar: NSCalendar = NSCalendar()
let components = calendar.components(unitFlags: .CalendarUnitDay,
fromDate: date,
toDate: now,
options: 0)
components.day
'toDate'功能已记录在案,所以我不确定为什么会收到错误?
任何帮助表示感谢。
答案 0 :(得分:4)
有两个错误:
unitFlags:
。NSCalendarOptions(0)
或仅nil
。合:
let components = calendar.components(.CalendarUnitDay,
fromDate: date, toDate: now, options: nil)
Swift 2更新: NS_OPTIONS现已导入为符合要求
到OptionSetType
,并且“无选项”可以指定为空集:
let components = calendar.components(.Day,
fromDate: date, toDate: now, options: [])