iphone - UIImage encodeWithCoder 识别选择器?

标签 iphone objective-c uitableview ios4 core-data

我遇到了这个错误,但我不知道如何修复它。我刚刚添加了来自 Apple 示例 (LazyTableImages) 的延迟加载以及来自照片位置示例项目的 UIImageToDataTransformer 类。

2011-07-08 -[UIImage encodeWithCoder:]: unrecognized selector sent to instance 0x73af2e0
2011-07-08 *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIImage encodeWithCoder:]: unrecognized selector sent to instance 0x73af2e0'
*** Call stack at first throw:
(
    0   CoreFoundation                      0x02e65919 __exceptionPreprocess + 185
    1   libobjc.A.dylib                     0x02fb35de objc_exception_throw + 47
    2   CoreFoundation                      0x02e6742b -[NSObject(NSObject) doesNotRecognizeSelector:] + 187
    3   CoreFoundation                      0x02dd7116 ___forwarding___ + 966
    4   CoreFoundation                      0x02dd6cd2 _CF_forwarding_prep_0 + 50
    5   Foundation                          0x02b46076 _encodeObject + 1076
    6   Foundation                          0x02b51495 +[NSKeyedArchiver archivedDataWithRootObject:] + 206
    7   CoreData                            0x0098e0f5 -[NSSQLiteConnection execute] + 2677
    8   CoreData                            0x009e00d2 -[NSSQLiteConnection updateRow:] + 354
    9   CoreData                            0x009df084 -[NSSQLConnection performAdapterOperations:] + 180
    10  CoreData                            0x009ded7e -[NSSQLCore _performChangesWithAdapterOps:] + 494
    11  CoreData                            0x009dd876 -[NSSQLCore performChanges] + 406
    12  CoreData                            0x009d7338 -[NSSQLCore saveChanges:] + 216
    13  CoreData                            0x00995539 -[NSSQLCore executeRequest:withContext:error:] + 409
    14  CoreData                            0x00a4411b -[NSPersistentStoreCoordinator executeRequest:withContext:error:] + 3691
    15  CoreData                            0x009cdc48 -[NSManagedObjectContext save:] + 712
    16  Playing                             0x0004b99d -[TheData saveEvent] + 93
    17  Playing                             0x00048097 -[TheData updateEvent:] + 1527
    18  Playing                             0x00047943 -[TheData runUpdateWithData:] + 659
    19  CoreFoundation                      0x02dd642d __invoking___ + 29
    20  CoreFoundation                      0x02dd6301 -[NSInvocation invoke] + 145
    21  Foundation                          0x02ba19a5 -[NSInvocationOperation main] + 51
    22  Foundation                          0x02b100c6 -[__NSOperationInternal start] + 747
    23  Foundation                          0x02b0fd1a ____startOperations_block_invoke_2 + 106
    24  libSystem.B.dylib                   0x924f1fc4 _dispatch_call_block_and_release + 16
    25  libSystem.B.dylib                   0x924e4292 _dispatch_worker_thread2 + 228
    26  libSystem.B.dylib                   0x924e3d21 _pthread_wqthread + 390
    27  libSystem.B.dylib                   0x924e3b66 start_wqthread + 30
)
terminate called after throwing an instance of 'NSException'
sharedlibrary apply-load-rules all
Current language:  auto; currently objective-c

最佳答案

UIImage 不符合 NSCoding 协议(protocol),并且(因此)不实现 encodeWithCoder:。您可能希望将图像转换为数据表示形式(例如 PNG 数据)并对其进行编码。

编辑:另见 this answer寻求解决方法。

关于iphone - UIImage encodeWithCoder 识别选择器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6633077/

相关文章:

iphone - 如何在 iPhone 中以编程方式获取应用程序的存储大小

ios - iOS7 中选定的 UITableViewCell 的奇怪行为

ios - Swift - 在 Button-Tap 之后从 TableView 中删除单元格

ios - 配置表格每个cell的indexPath

ios - 如何在 iOS 项目之间仅共享( cocoa ) pod (!)?

iphone - 如何优化绘制 map 叠加层的代码

ios - 检测是否手动输入了 HealthKit 事件

ios - 魔法记录,无法保存对象 : contextDidSave == NO, error = nil

ios - Xcode/模拟器 : How to run older iOS version?

iphone - 获取 UIButton 所在的 View