我使用以下代码来显示从互联网加载的 UIImage:
let imgURLString = "http://.../images/" + (self.userImage as String)
let imgURL = NSURL(string: imgURLString)
let imageData = NSData(contentsOfURL: imgURL!)
self.profilePictureImage.image = UIImage(data: imageData!)
如果图像不太大,这在 iphone5 模拟器上效果很好。
但是当我用手机(ios9 iphone5)测试时,如果我更改服务器上的图像,仍然显示旧图像。
我认为有一个缓存。
有办法清除缓存吗?或者也许有更好的方法来显示存储在远程服务器上的图像?
感谢您的反馈。
问候,
托马斯
编辑
我刚刚发现了一件有趣的事情。
当我在本地网络(通过WIFI)测试时,它在模拟器和iPhone上都能正常工作。
但是当我远程测试(通过4G)时,显示的图像是旧图像。我必须使用网络浏览器连接服务器并刷新图像文件夹以使新图像显示在应用程序上。
有办法解决这个问题吗?
最佳答案
我最终通过更改远程服务器上存储的新图像的名称来修复它。因此,我避免了任何缓存问题。
关于swift - ios9 缓存 NSData?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35436775/