Question

Bonjour les gens merveilleux de StackOverflow!

J'ai un problème.

Je travaille sur une application qui prendra plusieurs photos et à chaque fois il les agrandir, afficher un aperçu, les enregistrer, puis chargez à nouveau le UIImagePickerController.

Mais après avoir pris environ 5 à 6 images, il meurt.

Je pense qu'il est en train de mourir parce que j'ai UIImageView que je mets et après tant de photos du UIImage que je l'ai mis sans rien est plus référence.

Je pense que le coupable est quelque part ici ...

Y at-il quelque chose que je fais mal?

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

    [backgroundImage setImage: [[UIImage alloc] initWithCGImage:[[info objectForKey:UIImagePickerControllerOriginalImage] CGImage]]];
    [backgroundImage setTransform:CGAffineTransformRotate(CGAffineTransformMakeScale(zoom/3, zoom/3), 1.570796327)];

    UIGraphicsBeginImageContext([backgroundView bounds].size);
    CGContextRef ctx = UIGraphicsGetCurrentContext();
    CGContextFillRect(ctx, [backgroundView bounds]);
    [backgroundView.layer renderInContext:ctx];
    UIImage* screenImage = UIGraphicsGetImageFromCurrentImageContext();

    UIGraphicsEndImageContext();

    UIImageWriteToSavedPhotosAlbum(screenImage, self, @selector(ImageDidSave:didFinishSavingWithError:contextInfo:), nil);

    [self dismissModalViewControllerAnimated:YES];
}

backgroundImage est celui qui tente finalement d'utiliser une image qui ne sont plus rien référencement.

Faites-moi savoir comment je peux préciser.

Merci beaucoup à tous qui sont restés avec moi jusque-là!

Était-ce utile?

La solution

Ceci est une supposition, mais je parie que vous êtes à court de mémoire et d'être tué. Essayez autoreleasing l'image que vous envoyez à l'arrière-plan dans cette ligne:

[backgroundImage setImage: [[[UIImage alloc] initWithCGImage:[[info objectForKey:UIImagePickerControllerOriginalImage] CGImage]] autorelease]];
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top