UIImageView显示来自HTTP的下载图像,但不显示图像资源

时间:2017-04-13 22:15:42

标签: ios objective-c uiimageview uiimage

在用户登录后的第一个View Controller中,可以快速检查用户是否已将自定义图像上传到其帐户。 (如果有,则在用户的个人资料数据中有一个URL。)

这些图片在我的代码中正确下载,并且显示效果非常好。当没有自定义用户图像时,问题就出现了,并且VC尝试将相同的UIImageView设置为默认图片(在xcassets中)。据我所知,图片正被加载到包中,这是一个有效的PNG文件。

以下是设置图片的代码段。如果找不到自定义URL,我将URL参数字符串设置为“nil”。

-(void) setImageWithUrl: (NSString *) Url Imageview: (UIImageView *) image {

if (Url.length > 4) {
    NSURL *url = [NSURL URLWithString:Url];

    NSData *data = [NSData dataWithContentsOfURL:url];
    UIImage *Profileimage = [UIImage imageWithData:data];

    [image setImage:Profileimage];
}
else {
    UIImage *Profileimage = [UIImage imageNamed:@"DefaultPicture"];

    [image setImage:Profileimage];
}
}

这个让我疯狂,所以欢迎所有奇怪的想法。 :-)

如果您希望我发布您认为可能是一个因素的代码的任何其他部分,请告诉我。

1 个答案:

答案 0 :(得分:0)

看起来像是需要调试的问题。但是为什么不使用任何图像下载/缓存库,如SDWebImage? 它将非常有效和方便