我有一个不规则的碰撞(1/5在设备上,4/5在模拟器上)。我设置了一个异常断点,它发生在以下行,没有任何控制台信息:if let carColorSet = car.carToDisplay?.allObjects as? [Display] {
注:car.carToDisplay
是NSSet
在设置异常断点之前,当它崩溃时,我将在控制台中获取以下信息:Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSMutableSet unionSet:]: set argument is not an NSSet'*** First throw call stack:( 0 CoreFoundation 0x0000000102e79b0b __exceptionPreprocess + 171 1 libobjc.A.dylib 0x00000001023d6141 objc_exception_throw + 48 2 CoreFoundation 0x0000000102e00051 -[NSMutableSet unionSet:] + 1041 3 CoreData 0x0000000101b10df8 -[_NSFaultingMutableSet willReadWithContents:] + 936 4 CoreData 0x0000000101af131b -[_NSFaultingMutableSet allObjects] + 27 5 Keyboard 0x00000001018f838e
你知道吗?当我试图将carToDisplay?.allObjects
转换为Display
对象数组时,似乎会发生崩溃。
这是一个键盘扩展应用btw。
感谢您的任何意见!
最佳答案
问题(可能):
if let carColorSet = car.carToDisplay?.allObjects as? [Display]
carToDisplay
是一个NSet
但是函数
allObjects
返回一个数组我想你是想用数组做一个联合集。
更新问题:
请更新您的问题,qestion没有说明正确的错误行。
这个问题需要做以下工作
调用unionSet的状态。
unionSet的参数类型是什么。
关于ios - 从NSSet创建NSManagedObject时出现不规则崩溃,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44317671/