Swift 2.0日历组件错误
嗨我得到这个错误在迅速2.0
无法使用types为'(NSCalendarUnit,fromDate:NSDate?,toDate:NSDate?,options:nil)'的参数列表调用'components''
var hoy = dataFormatter.stringFromDate(NSDate()) var despues = dataFormatter.stringFromDate(fecha) var calHoy = dataFormatter.dateFromString(hoy) var calcDesp = dataFormatter.dateFromString(despues) let cal = NSCalendar.currentCalendar() let unit:NSCalendarUnit = .Day let components = cal.components(unit, fromDate: calcDesp, toDate: calHoy, options: nil)
从Swift 2开始, NS_OPTIONS
(例如NSCalendarOptions
)被映射为Swift作为一个OptionSetType
,它提供了一组类似的接口。 特别是,“无选项”现在可以指定为[]
而不是nil
:
let components = cal.components(unit, fromDate: calcDesp!, toDate: calHoy!, options: [])
另请参阅Swift 2.0 – 二进制运算符“|” 不能应用到两个UIUserNotificationType操作数和最近添加的答案如何在Swift中创buildNS_OPTIONS样式的位掩码枚举? 了解更多信息。
你不能作为你的选项参数通过零。 改为使用空白选项:
let components = cal.components(unit, fromDate: calcDesp!, toDate: calHoy!, options: [])
您还必须确保解包calcDesp和calHoy。
你也可以像下面这样使用rawValue
:
cal.components(unit, fromDate: calcDesp!, toDate: calHoy!, options: NSCalendarOptions(rawValue: 0))