从URL String设置UIImageView时图像质量不佳

时间:2017-06-06 19:27:45

标签: ios swift uiimageview

我制作了一个群聊应用,这样当你点击聊天气泡旁边的人物头像时,就会转到个人资料页面,在那里你可以全屏看到他们的个人资料图片。

在配置文件控制器中,我有

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。我有什么办法可以改善图像质量吗?

0 个答案:

没有答案