没有'|' 候选产生预期的上下文结果types“NSTextStorageEditActions”

我通过了raywenderlich.com和该行的文本工具包教程

edited(.EditedCharacters | .EditedAttributes, range: range, changeInLength: (str as NSString).length - range.length) 

产生以下错误:

 No '|' candidates produce the expected contextual result type 'NSTextStorageEditActions' 

当我将第一个参数改为:

 edited(.EditedCharacters, range: range, changeInLength: (str as NSString).length - range.length) 

我也尝试使用“OR”和“||” 没有任何成功。

Swift 2.2和iOS 9.2

@dfri是正确的。 为了说明使用pipe道的另一个例子,“|”是在执行UIImageView的autoResizingMask时,如下所示:

imageView.autoresizingMask = [.FlexibleWidth, .FlexibleHeight, ...]

当然你会用其他的UIViewAutoresizing选项replace...

祝你好运!

把它们放在如下的数组中:

而不是pipe道

 let timeDateComponents = calendar.components(NSCalendarUnit.Hour| NSCalendarUnit.Minute| NSCalendarUnit.Second, fromDate: NSDate()) 

尝试这个

 let timeDateComponents = calendar.components([NSCalendarUnit.Hour, NSCalendarUnit.Minute, NSCalendarUnit.Second], fromDate: NSDate())