- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 AGImagePickerController 从相册中挑选多张图片,然后将所选 Assets 推送到 viewController,它会尝试将每个 Assets 转换为 UIImage。但是,我发现如果我选择了超过 20 张图像,我将开始收到内存不足警告并退出应用程序。这是我的转换代码
for(int i =0 ; i < [self.selectedPictures count] ; i++)
{
NSLog(@"Object %d",i);
ALAsset *asset = [self.selectedPictures objectAtIndex:i];
ALAssetRepresentation *rep = [asset defaultRepresentation];
CGImageRef iref = [rep fullResolutionImage];
UIImage *anImage = [UIImage imageWithCGImage:iref scale:[rep scale] orientation:(UIImageOrientation)[rep orientation]];
float newHeight = anImage.size.height / (anImage.size.width / 1280);
UIImage *resizedImage = [anImage resizedImageWithContentMode:UIViewContentModeScaleAspectFit bounds:CGSizeMake(newHeight, 1280.f) interpolationQuality:kCGInterpolationHigh];
UIImage *resizedThumbnailImage = [anImage resizedImageWithContentMode:UIViewContentModeScaleAspectFill bounds:CGSizeMake(290.0f, 300.f) interpolationQuality:kCGInterpolationHigh];
// JPEG to decrease file size and enable faster uploads & downloads
NSData *imageData = UIImageJPEGRepresentation(resizedImage, 0.6f);
//NSData *thumbnailImageData = UIImagePNGRepresentation(thumbnailImage);
NSData *thumbnailImageData = UIImageJPEGRepresentation(resizedThumbnailImage, 0.6f);
PFFile *photoFile = [PFFile fileWithData:imageData];
PFFile *thumbnailFile = [PFFile fileWithData:thumbnailImageData];
[photoFile saveinbackground];
[thumbnailFile saveinbackground];
}
所以我想我应该添加 CGImageRelease(iref);在 anImage 释放 iref 之后,内存警告消失了。但是,在最后一个 Assets 转换为 UIImage 后,我的应用程序将崩溃。到目前为止,我无法找出它崩溃的原因。
最佳答案
你不应该做 CGImageRelease(iref);
除非你使用 CGImageCreate
,CGImageCreateCopy
或 CGImageRetain
。这就是它崩溃的原因。
关于objective-c - CGImageRelease 导致崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13279101/
我正在使用 AGImagePickerController 从相册中挑选多张图片,然后将所选 Assets 推送到 viewController,它会尝试将每个 Assets 转换为 UIImage。
在 Objc 中,我在处理图像后使用 CGImageRelease 方法。但是在 Swift 中这个方法是不可用的。 在 Retaining and Releasing Images 之后的 Appl
什么 iOS 框架包含 CGImageRelease? documentation说它在 ApplicationFramework 中,但我认为那是一个 OSX 框架。 最佳答案 它在 QuartzC
我的第一篇文章在 here寻找我的应用程序崩溃的原因。经过将近 3 小时的检测,现在我可以找出泄漏的位置。 首先,我正在做的是在使用 AFNetworking 下载图像后,我将根据下载图像的大小设置
我正在尝试从 iOS 中的图像 Assets 中读取 ARGB 像素。为此,我需要一个 CGImageRef,我可以用它来获取它的 CGDataProvider。我的问题是,如果我创建一个 CGIma
我是一名优秀的程序员,十分优秀!