如何阻止XCode自己做NSLog呢?

时间:2012-10-09 05:43:14

标签: iphone xcode uiimage nsurlconnection nslog

我正在使用NSURLConnection从服务器加载图像(大小为1.2 mb)。我正在做的是delegate我正在为我的imageView(一个UIImageView)分配收到的图片。所以它看起来像下载。

- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
{
    UIImage *image = [UIImage imageWithData:receivedData];
    imageView.image = image;
    image = nil;
}

在XCode使用以下消息打印NSLog期间。

<Error>: ImageIO: JPEG Corrupt JPEG data: premature end of data segment

我知道它的结果为UIImage,然后将其分配给imageView

有没有阻止XCode代表我写这条消息? 我必须这样做,因为我需要向用户显示图片正在下载。 < / p>

我检查了bytes时的一些答案!但它不是我的解决方案,因为我已经知道为什么会发生这种情况?,我只是想阻止XCode打印出来,这是我的一半。

被修改

使用NSURLConnection下载时数据会损坏。

谢谢!

1 个答案:

答案 0 :(得分:3)

编辑:如果您有更多图片,那么最好使用SDWebImage来加载图片

首先接收该代表使用的整个图像数据:

- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
    if (!receivedData)
    {
        receivedData = [NSMutableData data];
    }

    [receivedData appendData:data];

    NSLog(@"Receiving data... Length: %d", [receivedData length]);
}

现在收到的数据完全是这个方法:

-(void)connectionDidFinishLoading:(NSURLConnection *)connection
{
  UIImage *image = [UIImage imageWithData:receivedData];
  if(image) 
    imageView.image = image;
}