2016-08-07 85 views
1

Was ist der einfachste Weg, um das Bild in der Anwendung zu speichern und zu laden. Klicken Sie auf die Option "Action Shield", um ein Bild aus der Galerie oder von der Kamera herunterzuladen, wie dies zu tun wäre, wenn dieses Bild auf einen anderen Controller geladen wird. Und wenn viele Bilder werden dann wählen Sie ihre gewünschte URL. Wie kann man solch ein Feature am besten implementieren? Ich hatte Variante in Coredate Store String die Indexdatei zu finden. Wenn jemand weiß, wie man das macht oder von einer Art der Realisierung der Hälfte weiß, wäre ich sehr dankbar.Objective-C Speichern und Laden Image in App

Antwort

2

Sie können NSUserDefaults zum Speichern von Bildern in der App und zum Abrufen derselben verwenden, wenn Sie sie verwenden möchten.

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info { 
////------------------------------------------------------------------------------------------------------------------------------------------------- 

    UIImage *chosenImage = info[UIImagePickerControllerEditedImage]; 
    self.imagePicked.image = chosenImage; 
[[NSUserDefaults standardUserDefaults] setObject:UIImagePNGRepresentation(chosenImage) forKey:@"userImage"] 
    [picker dismissViewControllerAnimated:YES completion:NULL]; 

} 

//Retrieving the image 

- (void)viewWillAppear:(BOOL)animated { 
    [super viewWillAppear:animated]; 
    NSData* imageData = [[NSUserDefaults standardUserDefaults] objectForKey:@"userImage"]; 
    UIImage* userImage = [UIImage imageWithData:imageData]; 
self.imagePicked.image = userImage; 
} 

Zum Speichern mehrerer Bilder können Sie eine NSMutable-Datei verwenden.

0

// Bild speichern ALAssetsLibrary & Speichern Galerie Ordner: - (IBAction) sparen: (id) sender {

UIGraphicsBeginImageContextWithOptions(self.share_imageview.bounds.size, _share_imageview.opaque, 0.0); 
[self.share_view.layer renderInContext:UIGraphicsGetCurrentContext()]; 
UIImage *visibleViewImage = UIGraphicsGetImageFromCurrentImageContext(); 
UIGraphicsEndImageContext(); 

[self.library saveImage:visibleViewImage toAlbum:@"Photo Blender" withCompletionBlock:^(NSError *error) { 
    if (error!=nil) 
    { 
     NSLog(@"Big error: %@", [error description]); 
    } 
    else 
    { 
     UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"Success" message:@"Image saved to album." delegate:self cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil]; 
     [alert show]; 

    } 
}]; 

}