0

我正在使用 SDWebImage 框架在我的 iPhone 游戏中下载个人资料图像。

[cell.playerImage setImageWithURL:url placeholderImage: DefaultImage]; 

这很好用,但我担心服务器性能。每次重新加载 tableView 时,所有的单元格都会调用上面的代码来尝试获取图像。并且 tableView 经常重新加载。

由于大部分玩家没有头像,会设置DefaultImage,但我还是想不时检查一下对方玩家是否上传了头像,所以我可以得到它,但不是在每个tableView reload .

你会怎么做呢?

提前致谢

4

1 回答 1

1

当它从服务器请求图像时,第一次将播放器图像保存在文档目录中,名称为 playername.png 或 playerID.png(改变你想要的唯一性)。

在 SDWebImage setImageWithURL 的方法中添加这个逻辑:

if([[NSFileManager defaultManager] fileExistsAtPath:@"Your Player Image Path"])  
{
    // set image from local Path
}
else
{
   //request from server
   // save image in document Directory and then set that image
}
于 2012-08-09T05:32:25.420 回答