Swift 2.0 中将 NSCalendarUnit 与 OR(管道)结合时出错
Error combining NSCalendarUnit with OR (pipe) in Swift 2.0
我有一些代码在 Swift 2.0:
let formatter = NSDateComponentsFormatter()
formatter.allowedUnits = NSCalendarUnit.Year
formatter.allowedUnits |= .Month
formatter.allowedUnits |= .WeekOfMonth
formatter.allowedUnits |= .Day
formatter.allowedUnits |= .Hour
formatter.allowedUnits |= .Minute
我收到错误 Binary operator '|=' cannot be applied to 'NSCalenderUnit' operands
。
做这种事情的新方法是什么?
NSCalendarUnit
是 Swift 2 中的 OptionSetType
,而不是 RawOptionSetType
。这意味着您不能再逻辑或它了。相反,您可以使用它的数组文字表示:
formatter.allowedUnits = [.Year, .Month, .WeekOfMonth, .Day, .Hour, .Minute]
我有一些代码在 Swift 2.0:
let formatter = NSDateComponentsFormatter()
formatter.allowedUnits = NSCalendarUnit.Year
formatter.allowedUnits |= .Month
formatter.allowedUnits |= .WeekOfMonth
formatter.allowedUnits |= .Day
formatter.allowedUnits |= .Hour
formatter.allowedUnits |= .Minute
我收到错误 Binary operator '|=' cannot be applied to 'NSCalenderUnit' operands
。
做这种事情的新方法是什么?
NSCalendarUnit
是 Swift 2 中的 OptionSetType
,而不是 RawOptionSetType
。这意味着您不能再逻辑或它了。相反,您可以使用它的数组文字表示:
formatter.allowedUnits = [.Year, .Month, .WeekOfMonth, .Day, .Hour, .Minute]