ultima para mini instalar cómo como actualizar actualizacion ios objective-c ipad uiimageview uiimage

ios - para - ultima actualizacion ipad 2



Bloqueos de la aplicación debido a la memoria Advertencia en el iPad 3 (2)

Estoy dibujando líneas en UIImage y mi imagen está en UIImageView . El proceso de dibujo por primera vez va bien y asigno la nueva imagen a UIImageView pero cuando repito el proceso me da advertencia de memoria y bloqueos de aplicaciones:

Terminación en respuesta a la terminación del tablero.

He creado un perfil de mi aplicación y los datos de cuadrícula de CG tomaban 273 MB y, en general, sus 341 MB Live Bytes. También incluimos el código en el grupo de liberación automática, pero no obtuvimos el éxito. Mi código

UIGraphicsBeginImageContext(imageView.image.size); [imageView.image drawAtPoint:CGPointMake(0, 0)]; context2=UIGraphicsGetCurrentContext(); for(int i=0; i<kmtaObject.iTotalSize; i++) { kmtaGroup=&kmtaObject.KMTA_GROUP_OBJ[i]; //NSLog(@"Group # = %d",i); for (int j=0; j<kmtaGroup->TotalLines; j++) { lineObject=&kmtaGroup->Line_INFO_OBJ[j]; // NSLog(@"Line # = %d",j); // NSLog(@"*****************"); x0 = lineObject->x0; y0= lineObject->y0; x1= lineObject->x1; y1= lineObject->y1; color= lineObject->Color; lineWidth= lineObject->LinkWidth; lineColor=[self add_colorWithRGBAHexValue:color]; linearColor=lineColor; // Brush width CGContextSetLineWidth(context2, lineWidth); // Line Color CGContextSetStrokeColorWithColor(context2,[linearColor CGColor]); CGContextMoveToPoint(context2, x0, y0); CGContextAddLineToPoint(context2, x1, y1); CGContextStrokePath(context2); } } newImage=UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); imageView.image=newImage;


La resolución máxima utilizada en el dispositivo iOS es 1024x1024. no podemos usar más que ese tamaño. usa imágenes 2x y 3x para los tamaños de dispositivo respectivos.


Así que simplemente sucedió que tropecé con un problema similar. Estaba asignando una imagen a la vista de la imagen donde la imagen en sí misma fue retenida por otros objetos, siendo procesada y tal ... El resultado fue que la vista de la imagen efectivamente filtró todas esas imágenes de alguna manera.

La solución que utilicé fue crear una copia de la imagen en el nivel de CGImage antes de asignarla a la vista de la imagen. Supongo que debe haber un problema con los mapas de bits o algo así. De todos modos intente crear una copia como esta:

CGImageRef cgCopy = CGImageCreateCopy(originalImage.CGImage); UIImage *copiedImage = [[UIImage alloc] initWithCGImage:cgCopy scale:originalImage.scale orientation:originalImage.imageOrientation]; CGImageRelease(cgCopy); imageView.image = copiedImage;