2011-12-29 1 views
1

i utilisé le code ci-dessous pour enregistrer des photos que prises de la caméraRetirez le contenu du NSURL Chemin

code:

- (IBAction)saveImage:(id)sender { 
    UIImage *viewImage = imageView.image; // was taken from Camera 
    ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init]; 
    // Request to save the image to camera roll 
    [library writeImageToSavedPhotosAlbum:[viewImage CGImage] orientation:(ALAssetOrientation)[viewImage imageOrientation] completionBlock:^(NSURL *assetURL, NSError *error){ 
     if (error) { 
      NSLog(@"error"); 
     } else { 
      NSLog(@"url %@", assetURL); 
      self.imgUrl = assetURL; 
     } 
    }]; 
    [library release]; 
} 

c'est le journal de NSLog

assets-library://asset/asset.JPG?id=2A72A3FF-1662-4979-8DD7-0F5721C49F81&ext=JPG 

Maintenant, quand im fait avec l'image comment l'enlever?

J'ai essayé:

NSFileManager *fileManager = [NSFileManager defaultManager]; 
[fileManager removeItemAtPath:[self.imgUrl absoluteString] error:NULL]; 

mais cela n'a pas fonctionné toute aide sera grande

vous remercie à l'avance

Répondre

2

Si vous ne prévoyez pas d'enregistrer l'image dans la bibliothèque de photos de l'utilisateur en permanence, pourquoi êtes-vous d'enregistrer l'image il d'abord?

Vous devez enregistrer l'image dans le dossier sandbox de votre application, puis le supprimer à partir de là.

Vous ne pouvez pas supprimer les images de la photothèque

1

Essayez d'utiliser le chemin NSURL. Assurez-vous de vérifier que le fichier existe sur le chemin avant de supprimer votre chemin de fichier.

NSFileManager *fileManager = [NSFileManager defaultManager]; 
[fileManager removeItemAtPath:[self.imgUrl path] error:NULL]; 
+0

il ne fonctionne pas je l'ai essayé –

+0

Je crois imgURL est NSURL objet, le cas échéant, il devrait fonctionner. Juste essayer de l'imprimer url vous obtenez – Splendid

+0

aussi i NSLog (@ "% @", [chemin auto.imgUrl]); le résultat est: /asset.JPG –