我有一个包含图片(用户头像)的自定义单元格的tableview。 我已经使用
为cellForRowAt-Function实现了一个简单的解决方案 if let imgData = try? Data(contentsOf: imageUrl!), let img = UIImage(data: imgData) {
cell.profilePictureView.image = img
}
然而,这是非常滞后的,我有几个问题:
- >什么是设置图像的好方法?就像下面一样,或者我应该同步加载它们吗?
- >什么是API服务的最佳方法:是否可以单独获取所有图像(通过为每行请求api / images / userid)或者最好将所有图像直接包含在服务器响应中(列表为例如,20个玩家包含图片属性)
- >缓存图片是否有意义?或者这种情况会自动发生吗?什么是实现这一目标的好方法?
答案 0 :(得分:0)
你应该做所有"获取图像"在后台线程上的东西,只返回主线程来更新UI。你可以使用' sdwebimage'。此pod下载图像并为您兑现(您不必担心)。