[英]Potential Leak of an Object - Xcode - ios5
我正在使用具有ARc启用功能的ios 5。 所以在下面的示例中,我收到内存泄漏警告...但是由于使用ARC,我无法使用自动释放。 请任何建议任何人?
-(void)coreImageEffect{
CIImage *inputImage = [[CIImage alloc] initWithImage:blurImage.image];
CIFilter *hueAdjust = [CIFilter filterWithName:@"CIHueAdjust"];
[hueAdjust setDefaults];
[hueAdjust setValue:inputImage forKey:@"inputImage"];
[hueAdjust setValue:[NSNumber numberWithFloat: 3.4f]
forKey:@"inputAngle"];
CIImage *outputImage = [hueAdjust valueForKey:@"outputImage"];
CIContext *context = [CIContext contextWithOptions:nil];
blurImage.image = [UIImage imageWithCGImage:
[context createCGImage:outputImage
fromRect:outputImage.extent]];
}
我不能使用[CIContext Autorelease]
; 问题显示CIContext“方法返回保留计数为+1的核心基础对象”
请提出建议。
-createCGImage:…
返回一个Core Graphics对象,该对象不是Objective-C对象,不会由ARC管理。 因此,您必须手动CGImageRelease :
CGImageRef cgImage = [context createCGImage:outputImage
fromRect:outputImage.extent];
blurImage.image = [UIImage imageWithCGImage:cgImage];
CGImageRelease(cgImage);
但是为什么不直接使用+imageWithCIImage:
?
blurImage.image = [UIImage imageWithCIImage:outputImage];
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.