- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我遇到了一个问题。我想用一些文本和可以更改的个人资料图片填充表格 View ,我为此使用了此功能。
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell: CommonCellView!
cell = self.tableView.dequeueReusableCellWithIdentifier("CommonCellView") as! CommonCellView
cell.nameLabel.text = self.userCollection[indexPath.row].display_name
cell.companyLabel.text = self.userCollection[indexPath.row].user_organisation
cell.profileImage.hnk_setImageFromURL(NSURL(string: self.userCollection[indexPath.row].profile_picture)!)
self.makeImageViewCircular(cell.profileImage.layer, cornerRadius: cell.profileImage.frame.height)
cell.profileImage.clipsToBounds = true
return cell
}
这里没什么好惊讶的。但是,当我更改自己的个人资料图片时,我会将其发送到 API 并重新访问此功能,它会显示缓存的图像。所以我想我可能会尝试一些不同的东西,为什么不使用 Alamofire 获取每个细胞的所有图像。
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell: CommonCellView!
cell = self.tableView.dequeueReusableCellWithIdentifier("CommonCellView") as! CommonCellView
cell.nameLabel.text = self.userCollection[indexPath.row].display_name
cell.companyLabel.text = self.userCollection[indexPath.row].user_organisation
cell.profileImage.image = UIImage()
//getting the cell image
Alamofire.request(.GET, self.userCollection[indexPath.row].profile_picture)
.response {(request, response, avatarData, error) in
let img = UIImage(data: avatarData!)
cell.profileImage.image = img
}
self.makeImageViewCircular(cell.profileImage.layer, cornerRadius: cell.profileImage.frame.height)
cell.profileImage.clipsToBounds = true
return cell
}
这在用户滚动速度非常快的情况下会显示不同用户的图像,直到请求得到满足。好的,所以让其他人发生这种情况并为图像使用数组。我也试过了。但是因为它是异步的,图像会以错误的顺序进入数组。回到 HanekeSwift。我阅读了文档,看到我在磁盘上有一个缓存,但我无法清除或删除它。
清除缓存我也试过:NSURLCache.sharedURLCache().removeAllCachedResponses()
但我什么也没做。它适用于 Alamofire 情况,但也不是一个好的解决方案。
我想使用 hanekeSwift,因为 HanekeSwift 的速度足以获取所有图像。但我想在每次 Controller 加载时清除缓存。
如有任何建议,我们将不胜感激!
中欧
最佳答案
我发现了一个问题。
首先,我运行的是旧版本的 pod。所以更新后我可以使用该功能。
Shared.imageCache.removeAll()
在将 haneke 导入 Controller 之后。
最后一段代码是这样的。 func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell: CommonCellView!
cell = self.tableView.dequeueReusableCellWithIdentifier("CommonCellView") as! CommonCellView
cell.nameLabel.text = self.userCollection[indexPath.row].display_name
cell.companyLabel.text = self.userCollection[indexPath.row].user_organisation
cell.profileImage.image = UIImage()
//getting the cell image
cell.profileImage.hnk_setImageFromURL(NSURL(string: self.userCollection[indexPath.row].profile_picture)!)
//deleting it from cache
Shared.imageCache.removeAll()
self.makeImageViewCircular(cell.profileImage.layer, cornerRadius: cell.profileImage.frame.height)
cell.profileImage.clipsToBounds = true
return cell
}
它现在可以工作了,但是在其他单元格被填充时一直删除缓存似乎有点矫枉过正。
关于ios - 如何使用 HanekeSwift Swift 删除缓存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38201426/
我正在获取大约 136 张图像,每张大约 500 KB,以便将它们缓存在磁盘上。 下载图像 #98 后,我开始收到剩余图像的以下错误(这让我觉得它们没有被缓存)。 2015-07-29 09:52:4
当使用HanekeSwift时使用表格 View ,我可以简单地在单元格内显示图像: cell.image.hnk_setImageFromURL(url!) 没有任何进一步的控制。 如果我快速滚动表
我正在使用 HanekeSwift 从 URL 下载图像 并将其设置在 UIImage 中。 我这样做就像 .hnk_setImageFromURL() 图像 URL 经常更新为新图像,我需要下载新图
我正在制作一个在每个 ViewController 上下载大量图像的应用程序。我正在尝试使用 HanekeSwift,我想知道我应该如何在不同的 ViewController 上使用缓存图像,这样它就
当我使用 .hnk_setImageFromUrl 扩展函数将图像设置为 UIImageView(缩放)时使用 Haneke Swift,如何从缓存中再次删除它。我试过: profileImageVi
我遇到了一个问题。我想用一些文本和可以更改的个人资料图片填充表格 View ,我为此使用了此功能。 func tableView(tableView: UITableView, cellForRowA
我在当前的 swift 项目中使用 Alamofire 和 SwiftyJSON。我想添加 HanekeSwift 用于缓存。 将 HanekeSwift 添加到项目中使其与 SwiftyJSON s
iOS 中有许多可用的缓存库。最流行的库是用于缓存图像的 SDWebImage。有一个图像缓存库是HanekeSwift 的 用于图像缓存。 我的问题是如果 SDWebImage 和 HanekeSw
我有这段代码: override func viewDidLoad() { super.viewDidLoad() let id = NSUserDefaults.standardUs
我是一名优秀的程序员,十分优秀!