如何在下载实际图像之前显示预览图像。 在下载其节目预览图像之前,WhatsApp正在做类似的事情。我的问题是如何显示预览图像?
下载前预览图片...
以上图片来自WhatsApp应用程序,以便更好地理解我的问题..
答案 0 :(得分:3)
答案 1 :(得分:0)
这是使用thumbnailURL或thumbnailData的更好的解决方案,因为你有一个缓存的图像抛出alamofire,SDWebImage ......
它简单而完美的表现
对于thumbnailURL ,它只接受本地路径:
<强> &#34;文件://&#34 ;.表明它的本地路径
if let path = SDImageCache.shared().defaultCachePath(forKey: item.url_thumbnail), let url = URL(string: "file://\(path)") {
attributeSet.thumbnailURL = url
}
缩略图数据
只需指定本地网址
即可 attributeSet.thumbnailData = try? Data(contentsOf: url)
调试并简单了解发生了什么
do {
attributeSet.thumbnailData = try Data(contentsOf: url)
} catch (let error as NSError) {
print(error)
}
答案 2 :(得分:0)
一种方法是让服务器使用开放套接字连接(通常用于聊天应用程序)将完整映像的非常低分辨率的缩略图直接发送到客户端。
这样客户端不需要触发异步下载操作来下载缩略图,这样就可以立即将缩略图呈现给用户(带有某种覆盖或模糊)
为了通过打开的套接字发送它,服务器可以将低分辨率缩略图转换为base64字符串并将其作为字符串发送。