我制作了一个群聊应用,这样当你点击聊天气泡旁边的人物头像时,就会转到个人资料页面,在那里你可以全屏看到他们的个人资料图片。
在配置文件控制器中,我有
self.profileImageView.loadImageUsingCacheWithUrlString(self.profileAvatar)
在viewDidLoad中,self.profileAvatar
是用户Facebook个人资料图片的URL字符串。这是我正在使用的图像加载功能:
let imageCache = NSCache<NSString, UIImage>()
extension UIImageView {
func loadImageUsingCacheWithUrlString(_ urlString: String) {
self.image = nil
// Check cache for image first
if let cachedImage = imageCache.object(forKey: urlString as NSString) {
self.image = cachedImage
return
}
// Otherwise fire off a new download
Alamofire.request(urlString)
.responseImage { response in
if let downloadedImage = response.result.value {
// image is here.
imageCache.setObject(downloadedImage, forKey: urlString as NSString)
self.image = downloadedImage
}
}
}
}
当我点击头像查看全屏图像时,质量很糟糕。我把它设置为.scaleAspectFill
。我有什么办法可以改善图像质量吗?