UIImage CGImage:发送到解除分配的实例的消息

时间:2010-10-01 05:58:30

标签: iphone uiimage

以下是我的代码片段:

<。>文件中的

@property (nonatomic, retain) UIImage *photo;
@property (nonatomic, retain) NSData *photoData;
<。>文件中的

@synthesize photo;
@synthesize photoData;
...
photo = [info objectForKey:@"UIImagePickerControllerOriginalImage"]; {*}
...

NSLog(@"b1");
self.photoData = UIImagePNGRepresentation(self.photo);
NSLog(@"b2");

以下是我在控制台中看到的日志:

b1
*** -[UIImage CGImage]: message sent to deallocated instance 0x583b1d0

如何防止此“消息发送到解除分配的实例”问题?我对此非常陌生,所以我真的很感激为什么会发生这种情况的背景? (指向某些文档的指针也很棒)

由于

更新: *此处发生错误。感谢codelark指出这一点。如果此行更改为以下内容,则不会发生错误。

photo = [[info objectForKey:@"UIImagePickerControllerOriginalImage"] retain];

1 个答案:

答案 0 :(得分:0)

0x583b1d0可能是有问题对象的地址(self的值)。您可以使用带有%p的NSLog或printf进行打印。

<强> PK