【发布时间】:2012-05-05 21:04:50
【问题描述】:
我是核心数据相关的新手。任何人都可以帮助我提供正确的步骤/教程,展示如何将图像保存到核心数据及其检索。我已经能够存储字符串数据,但是我的应用程序在尝试保存图像时崩溃。 为了节省:
DataEvent *event = (DataEvent *)[NSEntityDescription insertNewObjectForEntityForName:@"DataEvent"
inManagedObjectContext:managedObjectContext];
NSURL *url2 = [NSURL URLWithString:@"xxxxxxxxxxxxxxx SOME URL xxxxxxxxxxxx"];
NSData *data = [[NSData alloc] initWithContentsOfURL:url2];
imageSave=[[UIImage alloc]initWithData:data];
NSData * imageData = UIImageJPEGRepresentation(imageSave, 100.0);
[event setValue:self.imageSave forKey:@"pictureData"];
用于检索:
DataEvent *event = (DataEvent *)[eventsArray objectAtIndex:indexPath.row];
UIImage *image = [UIImage imageWithData:[event valueForKey:@"pictureData"]];
UIImageView *imageViewMainBackGround = [[UIImageView alloc]
CGRect rect3=CGRectMake(0,2,100.0,100.0);
imageViewMainBackGround.frame = rect3;
[cell.contentView addSubview:imageViewMainBackGround];
[imageViewMainBackGround release];
【问题讨论】:
-
模型文件中“pictureData”的数据类型是什么?
-
“开店的型号和开店的型号不兼容”这个错误从哪里来的?
-
代替这一行 [event setValue:self.imageSave forKey:@"pictureData"];试试这个 event.pictureData = imageData;
-
UIImageJPEGRepresentation 的第二个参数需要一个 0 .. 1 范围内的数字。您使用了一个超出范围的数字 100.0。您的意思可能是 1.0。
标签: objective-c ios cocoa-touch core-data uiimage