当我删除一个包含图像的托管对象时,该对象存储为外部记录中的可转换值,然后我崩溃并出现此错误:
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIImage _deleteExternalReferenceFromPermanentLocation]: unrecognized selector sent to instance 0xde49360'
最佳答案
我在 Apple Developer forums 中回答了类似的问题.
我猜您在数据建模器的该字段上选择了外部存储复选框。
有一个可以解决的错误。我是这样做的:
一旦您更新了数据并保存了上下文,任何删除它的尝试都会引发此“无法识别的选择器”异常。
要强制使用可以响应 _deleteExternalReferenceFromPermanentLocation 消息的正确对象,请执行以下操作:
[[self managedObjectContext] refreshObject:myobject mergeChanges:NO];
对象变为故障。当您下次访问或删除它时,外部数据将按预期删除,因为包装外部数据的正确对象将从存储中拉出并正确响应 _deleteExternalReferenceFromPermanentLocation。
关于core-data - 错误 : -[UIImage _deleteExternalReferenceFromPermanentLocation] unrecognized selector sent to instance,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7930427/