[英]How to save a UIImage from a UIImageView in Core Data
I have issue in UIImageView. 我在UIImageView中有问题。 In my project I have used two UIImageView
s ( mainview
for saving the background color and drawimage
for drawing), one as subview of the other: 在项目中,我用了两个UIImageView
S( mainview
用于保存背景颜色和drawimage
绘制),一个与其他的子视图:
[self.view addSubview:mainview];
[self.mainview addSubview:drawImage];
The problem is that whenever I am trying to save the objects in Core Data only one image is saved. 问题是,每当我尝试将对象保存到核心数据中时,仅保存一张图像。 This is my code: 这是我的代码:
if(checkedcore==YES)
{
NSData *imageData = UIImageJPEGRepresentation(mainview.image,1.0);
NSManagedObject *imagetblObj= [NSEntityDescription insertNewObjectForEntityForName:@"Imagedata" inManagedObjectContext:context];
//[imagetblObj setValue:<#(id)#> forKey:<#(NSString *)#>]
//[imagetblObj setValue:self.imageData forKey:@"imageData"];
[imagetblObj setValue:imageData forKey:@"imageData"];
[imagetblObj setValue:self.textfield.text forKey:@"date"];
[imagetblObj setValue:@"table" forKey:@"tabletext"];
[context deleteObject:imagemanaged];
[context insertObject:imagetblObj];
NSError *err;
if (![context save:&err])
{
NSLog(@"Couldn't save history item into coredata");
}
else
{
NSLog(@"data saved");
}
UIAlertView *alertview=[[UIAlertView alloc]initWithTitle:@"" message:@"Image Updated" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alertview show];
NSLog(@"data saved");
NSLog(@"save clicked");
/// [self getcoredata];
// TextPlacedViewController *viewcontroller=[[TextPlacedViewController alloc]initWithNibName:@"TextPlacedViewController" bundle:nil];
///viewcontroller.tabledata=self.array;
////viewcontroller.myimage=drawImage.image;
///[self.view addSubview:viewcontroller.view];
// [self.navigationController popViewControllerAnimated:YES];
}
}
else
{
mainview.image=drawImage.image;
NSData *imageData = UIImageJPEGRepresentation(mainview.image, 1.0);
if(![imageData isKindOfClass:[NSNull class]]||imageData==nil)
{
NSManagedObjectContext *context = [appDelegate managedObjectContext];
NSManagedObject *imagetblObj= [NSEntityDescription insertNewObjectForEntityForName:@"Imagedata" inManagedObjectContext:context];
[imagetblObj setValue:imageData forKey:@"imageData"];
[imagetblObj setValue:self.textfield.text forKey:@"date"];
[imagetblObj setValue:@"table" forKey:@"tabletext"];
NSError *err;
if (![context save:&err])
{
NSLog(@"Couldn't save history item into coredata");
}
UIAlertView *alertview=[[UIAlertView alloc]initWithTitle:@"" message:@"Data Saved" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alertview show];
NSLog(@"data saved");
NSLog(@"save clicked");
/// [self getcoredata];
saveimageviewcontroller *viewcontroller=[[saveimageviewcontroller alloc]initWithNibName:@"saveimageviewcontroller" bundle:nil];
///viewcontroller.tabledata=self.array;
////viewcontroller.myimage=drawImage.image;
///[self.view addSubview:viewcontroller.view];
[self.navigationController pushViewController:viewcontroller animated:YES];
Clean up your code: 清理您的代码:
NSData
将其转换为NSData
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.