我無法從保存的數據加載符合NSCoding協議的自定義類的實例。我的課有一個UIImage屬性,當我分配一個新的UIImage它的程序崩潰與exc_bad_access。exc_bad_access從NSKeyedUnarchiver返回的對象
在視圖控制器我宣佈我的對象,像這樣:
@interface SomeViewController : UIViewController {
IBOutlet UIImageView *imageView;
SomeClass *myObject;
}
@property (nonatomic, retain) SomeClass *myObject;
@property (nonatomic, retain) IBOutlet UIImageView *imageView;
然後在.m文件它被用作如下:
@synthesize myObject;
@synthesize imageView;
-(void)viewDidLoad{
myObject = [NSKeyedUnarchiver unarchiveObjectWithFile:someDataPath];
imageView.image = myObject.image;
}
到目前爲止好。但後來我選了一個新的形象,並嘗試將其設置爲myObject的「圖像」屬性,至於我可以通過代碼單步講,這將引發一個EXC_BAD_ACCESS
-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
[picker dismissModalViewControllerAnimated:YES];
UIImage *image = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
[imageView setImage:image];
myObject.image = image;
}
,它是導致exc_bad_access的最後一行。我究竟做錯了什麼?
你爲什麼在didFinishPickingMediaWithInfo設置myObject的:方法? – 2010-10-22 21:10:05