ios - Guardar imagen UIImageView
xcode save (1)
Actualmente tengo la capacidad de tomar una foto o cargar desde la cámara y colocar una imagen en el UIImageView en mi aplicación, si quiero la capacidad de tener un botón que guardará la imagen para que cuando vuelva a cargar la aplicación, la imagen esté todavía en el UIImageView.
Sin embargo, fue un botón para guardar la imagen una vez que la haya cargado y en el
-(void)viewDidLoad
tener el código para cargar la imagen que se guardó, pero no sé cómo abordar esto.
Cualquier ayuda sería fantástica.
Puede convertir imágenes a NSData
utilizando UIImagePNGRepresentation
o UIImageJPGRepresentation
, luego guarde los datos en un archivo que llame a uno de los métodos writeToFile...
.
Luego, cuando reinicie su aplicación, puede obtener la imagen llamando [UIImage imageWithData:[NSData dataWithContentsOfFile:filePath]]
- EDITAR -
Guardar imagen
UIImage *image = ...;
NSString *cachedFolderPath = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES)[0];
NSString *cachedImagePath = [cachedFolderPath stringByAppendingPathComponent:@"image.png"];
[UIImagePNGRepresentation(image) writeToFile:cachedImagePath atomically:YES];
Cargar imagen
NSString *cachedFolderPath = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES)[0];
NSString *cachedImagePath = [cachedFolderPath stringByAppendingPathComponent:@"image.png"];
UIImage *image = [UIImage imageWithData:[NSData dataWithContentsOfFile:cachedImagePath]];
Utilicé NSCachesDirectory
ya que supongo que no desea hacer una copia de seguridad de esta imagen (ya sea a través de iCloud o iTunes). Si lo hace, entonces querrá usar NSDocumentDirectory
en NSDocumentDirectory
lugar.