iOS 开发APP更换用户头像问题的处理方式
1.常见的处理方式:SDWebImage处理
这种使用方式是后台提供头像下载的URL
使用的方法—options参数选择options:SDWebImageRefreshCached–会自动更新头像
- (void)sd_setImageWithURL:(NSURL *)url placeholderImage:(UIImage *)placeholder options:(SDWebImageOptions)options completed:(SDWebImageCompletionBlock)completedBlock {
[self sd_setImageWithURL:url placeholderImage:placeholder options:options progress:nil completed:completedBlock];
}
tableview 的headview里的方法
- (void)setIconImageURLString:(NSString *)iconImageURLString {
[self.iconView sd_setImageWithURL:[NSURL URLWithString:iconImageURLString] placeholderImage:[UIImage imageNamed:@"placeholderImage"] options:SDWebImageRefreshCached completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, NSURL *imageURL) {
if (error) {
NSLog(@"====%@",error);
}
NSLog(@"%@===%@",image,imageURL);
//把新图片保存到沙盒
[self saveIconImageToDocument:image withName:@"newIconImage.jpeg"];
}];
}
//头像保存到本地
- (void)saveIconImageToDocument:(UIImage *)newIconImage withName:(NSString *)newIconImageName {
NSData *imageData = UIImageJPEGRepresentation(newIconImage, 0.5);
NSString *fullPath = [[NSHomeDirectory() stringByAppendingPathComponent:@"Documents"] stringByAppendingPathComponent:newIconImageName];
[imageData writeToFile:fullPath atomically:NO];
}
tableview控制器里的代码
/*************************更换头像从相册还是相机选择*******************************/
#pragma mark - 跳转到更换头像界面
- (void)changeIc