0

我正在从服务器获取图像的 URL,并使用以下方法将此图像转换为 png 格式: NSData *data1 = [NSData dataWithData:UIImagePNGRepresentation(img)]; [data1 writeToFile:pngFilePath atomically:YES];

但是当我在模拟器上完成该过程后检查它们时,某些图像已损坏。因此,这些图像不会在需要的地方显示在应用程序上。

请参阅附件图像,因为某些图像已损坏。

在此处输入图像描述

更新

我正在循环中调用一个方法,该方法从服务器并行获取图像并 didFinishLoading 我正在执行此操作: UIImage *img = [UIImage imageWithData:self.data];

NSArray *split = [self.strImageName componentsSeparatedByString:@"/"];

int arrCount=[split count];
NSString *imageName=[split objectAtIndex:arrCount-1];



NSString *docDirec = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];

NSString *pngFilePath=nil
pngFilePath = [NSString stringWithFormat:@"%@/Thumbs/%@",docDirec,imageName];


NSData *data1 = [NSData dataWithData:UIImagePNGRepresentation(img)];
[data1 writeToFile:pngFilePath atomically:YES];

[self.data release]; //don't need this any more, its in the UIImageView now
self.data=nil;
4

1 回答 1

0

我有类似的问题,我使用下面的代码解决了它

- (void)viewWillDisappear:(BOOL)animated
{



    if  (self.m_objWebManager != nil)//Webmanager is class for downloading the images as a background thread
    {
        [self.m_objWebManager cancelCommunication];

        [self.m_objWebManager release];

        self.m_objWebManager = nil;
    }

}
于 2012-06-26T12:51:47.603 回答