2012-04-06 5 views
0

wenn ich dieses Programm auf dem iPhone nach dem Hinzufügen von Thre zu vier Bildspeicher-Warnung kommen und App-Absturz ausführen. also bitte helft mir Danke, ich bekomme nur eine Bildreferenz und schreibe eine Datei und erhalte dann ein Bild aus dem Dateipfad. DankUIImagePickerViewController Speicherwarnung in Iphone beim Abrufen von Bild aus Photolibrary

- (IBAction)addPicsButtonClick:(id)sender 
{ 
    UIImagePickerController * picker = [[[UIImagePickerController alloc] init] autorelease]; 
    picker.delegate = self; 
    picker.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;  
    [self presentModalViewController:picker animated:YES];  
} 


- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker 
{ 
    [picker dismissModalViewControllerAnimated:YES]; 
} 

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info 
{   
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *pathToDocuments=[paths objectAtIndex:0]; 
    AppDelegate *app = [[UIApplication sharedApplication] delegate]; 
    NSData *imageData = UIImageJPEGRepresentation([info objectForKey:@"UIImagePickerControllerOriginalImage"], 0.3f);  
    [imageData writeToFile:[NSString stringWithFormat:@"%@/%d.jpg", pathToDocuments, [app.images count]] atomically:YES];  
    [self dismissModalViewControllerAnimated:YES]; 

} 
+0

behalten Sie Ihren Code von addPicsButtonClick im Autorelease-Pool möglicherweise, dass Ihr Problem lösen kann. – Leena

Antwort

0

lief ich den gleichen Code in einer neuen App im Simulator, und hatte keine Crash-Problem oder Speicher Warnung, und es erstellt die Dateien. Ich habe [app.images count] herausgenommen und stattdessen eine lokale Variable verwendet, da app.images nirgendwo in diesem Code gesetzt ist. Also, wenn diese Variable Müll oder zu viel freigegeben ist, könnte das Ihr Problem sein.

Verwandte Themen