上下文类型“NSFastEnumeration”不能与数组文字一起使用

时间:2016-10-07 10:32:24

标签: ios swift swift3

斯威夫特3,你会这样做吗?

let changeRequest = PHAssetCollectionChangeRequest(...)
let fastEnumeration = NSArray(array: [PHObjectPlaceholder])
albumChangeRequest?.addAssets(fastEnumeration)

还是这个?

let changeRequest = PHAssetCollectionChangeRequest(...)
albumChangeRequest?.addAssets([PHObjectPlaceholder] as NSFastEnumeration)

有什么区别?

1 个答案:

答案 0 :(得分:11)

正如您所发现的(您的代码有一些不一致并导致其他错误,更好地更新它),您无法使用as - 强制转换来将数组文字的类型指定为NSFastEnumeration

您需要找到符合NSFastEnumeration的正确类,在您的情况下,NSArray

通常写这样的东西:

changeRequest?.addAssets([/* needs instances, not type...*/] as NSArray)