我将用户的图像显示为个人资料图片。在另一个视图控制器中,通过用户可以改变个人资料图片然后将其存储到服务器端。但是我有一个问题,当我转到第一页时将图像发送到服务器后它向我显示一个旧图像而不是新图像。当我在浏览器中直接打开服务器URL时,它会向我显示新的URL。我认为它正在某处缓存。这是我显示图像的代码。
-(void)viewDidLoad{
NSString *urlString=[ImageURL stringByAppendingPathComponent:[[NSUserDefaults standardUserDefaults] valueForKey:@"profile-picture"]];
NSURL *imgUrl=nil;
imgUrl=[[NSURL alloc]initWithString:urlString];
[imgProfile_serviceProvider setImageWithURL:imgUrl placeholderImage:[UIImage imageNamed:@"No_image"]];
imgProfile_serviceProvider.layer.cornerRadius = 3.0;
imgProfile_serviceProvider.layer.masksToBounds = YES;
imgProfile_serviceProvider.layer.borderWidth=0.5;
}
我正在使用UIImageView + AFnetworking.h加载图片。
答案 0 :(得分:0)
您可以通过以下命令清除AFNetworking的图像缓存:
[[AFImageCache sharedImageCache] removeAllObjects];
此外,我认为它不会刷新您的图像,您需要手动重置图像网址。尝试将代码移至viewWillAppear
/ viewDidAppear
以实现此效果。