Domanda

Ho fatto riferimento a questo buon riferimento: https://stackoverflow.com/questions / 1282830 / UIImagePickerController-UIImage-memory-e più- ma sto avendo alcuni problemi molto gravi. Dopo faccio una foto, ricevo un avviso di memoria. Questo è per la prima foto prendo, non il secondo o il terzo.

Mi chiedevo se è perché ho un paio di piccoli file JPEG caricati dalla directory dell'applicazione in vista di scorrimento. L'unica soluzione mi viene in mente è quello di scaricare tutto nel mio MAINVIEW mentre l'UIImagePicker è attivo, e ricaricare tutto di nuovo in seguito, ma non sono sicuro che sia la soluzione corretta e non sono sicuro di come farlo.

Il l'UIImagePicker utilizzare fino che di memoria? Non ho nemmeno avuto per quanto riguarda l'elaborazione e la visualizzazione dell'immagine che ci vuole ancora. Ho ricevuto un avviso di memoria, anche se mi passi l'immagine via.

Qualsiasi aiuto apprezzato.

È stato utile?

Soluzione

Sì, questo accade. La cosa da ricordare è che va bene per ottenere un avviso di memoria, non significa che sei una persona cattiva, basta fare in modo che la vostra applicazione non va in crash o si confondono in risposta al avviso di memoria.

In particolare, è necessario comprendere che l'azione predefinita di UIViewController è per scaricare la sua vista se non sono visibili, e non sarà visibile se il selettore di immagini a schermo intero sta mostrando.

Altri suggerimenti

Per tutte le persone che sono ancora alla ricerca di una risposta reale e non una dichiarazione vaga poi guarda qui. Ho notato che ci sono centinaia di risposte, come "Maneggiare la memoria", ma che non risponde nulla. Spero che questo aiuti qualcun altro là fuori ...

Modificare la seguente

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
    UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];
    [imageView setImage:image];
    [self dismissModalViewControllerAnimated:YES];
}

Per il seguente così il vostro vista modale respinge prima di impostare la tua immagine ...

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
    UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];
    [self dismissModalViewControllerAnimated:YES];
    [imageView setImage:image];
}

Molto probabilmente si sta utilizzando le immagini uneditted, e tornano a grandezza piena regola di 1400x1300 che è enorme e w malato incidente la vostra applicazione, vi consiglio il ridimensionamento delle immagini alla risoluzione iPhone nativa 320x480, dovrebbe risolvere il problema

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top