2012-04-25 12 views
6

Sono un principiante collegato ai dati principali. Qualcuno potrebbe aiutarmi a fornire i passaggi/tutorial appropriati che mostrano come salvare le immagini sui dati di base e sul loro retrival. Sono già in grado di memorizzare i dati di stringa, ma la mia app si arresta in modo anomalo quando si tenta di salvare l'immagine. Per salvare:Salvataggio dell'immagine sui dati di base

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"]; 

Per retrival:

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]; 
+0

Che cosa è un tipo di dati per "pictureData" nel file modello? –

+0

il suo tipo di dati binario –

+0

"Il modello utilizzato per aprire il negozio è incompatibile con quello utilizzato per creare il negozio" dove viene visualizzato questo errore? –

risposta

0

È necessario impostare la pictureData valore del vostro oggetto gestito all'oggetto NSData (nel tuo caso imageData), non il imageSalva l'oggetto, che è un UIImmagine.

1

Non modificare la risoluzione se non è necessario ..

NSData * imageData = UIImageJPEGRepresentation(imageSave, 0.0); 

// e cambiare seguente riga di

[event setValue:imageData forKey:@"pictureData"]; 

See the store and Retrieve image from core data tutorial with sample code.

Speranza, questo vi aiuterà a ..

+0

Salve dopo averlo fatto, ricevo un errore: reason = "Il modello utilizzato per aprire il negozio è incompatibile con quello utilizzato per creare il negozio"; –

+0

dove salvare o recuperare ..? – Nit

+0

in Salvataggio dei dati dell'immagine –

2

error: reason = "The model used to open the store is incompatible with the one used to create the store"

soluzione:

eliminare il progetto di costruzione dal simulatore e pulire dalla scheda Prodotto, ora eseguire il progetto.

9

Per salvare:

NSData *imageData = UIImagePNGRepresentation(myUIImage); 

[newManagedObject setValue:imageData forKey:@"imageKey"]; 

E Per retrive Image:

NSManagedObject *selectedObject = [[self fetchedResultsController] objectAtIndexPath:indexPath]; 
UIImage *image = [UIImage imageWithData:[selectedObject valueForKey:@"imageKey"]]; 
[[newCustomer yourImageView] setImage:image]; 

cambiato formato

Problemi correlati