问题标签 [haneke]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1499 浏览

swift - Swift - UITableView - 快速滚动时加载不正确的图像

我正在使用 Haneke 库来下载、加载和缓存图像。这很好用,除非滚动太快,它会加载不正确的图像,或者有时根本没有图像。

它的滚动速度比在后台下载的速度要快,因此无论队列中的下一个图像是什么,都可以加载到错误的单元格中。

这是通过网络和缓存请求图像的代码。

此外,在自定义单元格 Swift 文件中,我可以在以下方法中放入任何内容,以在单元格离开屏幕时停止任何请求?

几个星期以来,我一直试图弄清楚这一点。如果有人有更好的库来解决这个问题,请告诉我。

0 投票
0 回答
131 浏览

ios - Swift - 图片下载问题

早上好 !

我有一个关于图片下载和约束的设计问题。

我目前使用 Haneke 在后台下载我的图像。它就像一个魅力,但我可以拥有很多不同的图像尺寸格式(我一次显示一个图像)。

所以我的问题是我根据图像的比例调整图像以适应不同的尺寸。它工作得很好:

我使用原型单元格来显示我的内容。因此,当该代码完成后,我重新加载封面图像单元格以应用/更新新布局。到目前为止,一切都很好 !!

但我的问题是,当图像看起来根本不好看并且正在调整大小时,应用新约束需要一点时间,这会导致 UI 看起来很奇怪/不好看,因为你可以看到它正在发生:=/

我使用的另一种方法是简单地同步加载图像:

但显然,出于性能原因/滚动问题,我想避免这种情况(向上滚动将再次下载图像,因为它没有被缓存)。

最好的方法是什么?

谢谢 !

0 投票
0 回答
79 浏览

ios - 处理 HanekeSwift 失败

我正在使用 HanekeSwift 来获取存储在缓存中的数据,当我的应用程序没有可用的互联网连接来调用一些远程 API 时,但我不清楚它是如何工作的。

我实现了以下功能以执行此任务。

我想知道如何处理没有存储在缓存中的数据的情况。我认为我必须使用该.onFailure方法,但在这种情况下,我还应该更改我的 completionHandler 以返回错误。

0 投票
1 回答
1206 浏览

ios - 如何使用 HanekeSwift Swift 删除缓存?

我遇到了一个问题。我想用一些文本和一个可以更改的配置文件图像填充一个表格视图,我为此使用了这个函数。

这里没什么好惊讶的。但是,当我更改自己的个人资料图片时,我会将其发送到 API 并修改此功能,它会显示缓存的图像。所以我认为我可能会尝试一些不同的东西,为什么不使用 Alamofire 获取每个单元格的所有图像。

这适用于用户非常快速滚动的程度,将显示不同用户的图像,直到请求得到满足。好吧,让这发生在其他地方,并为图像使用一个数组。我也试过了。但是因为它是异步的,所以图像会以错误的顺序进入数组。所以回到HanekeSwift。我阅读了文档,发现我在磁盘上有一个缓存,但我无法清除或删除它。

清除缓存我也试过: NSURLCache.sharedURLCache().removeAllCachedResponses()

但我什么也没做。它适用于 Alamofire 情况,但也不是一个好的解决方案。

我想使用 hanekeSwift,因为 HanekeSwift 足够快,可以获取所有图像。但我想在每次控制器加载时清除缓存。

任何建议,将不胜感激!

切斯

0 投票
1 回答
1637 浏览

nsfilemanager - 什么是 Swift 3 enumerateContentsOfDirectoryAtPath 语法?(哈内克)

我正在将 Haneke 缓存框架转换为 Swift 3,但遇到了 enumerateContentsOfDirectoryAtPath 的障碍。

这是原始语法(在 github 上查看),

我相信我正在寻找的是通过查看 FileManger 定义找到的以下函数,但是我不知道如何进行转换:

问题

enumerateContentsOfDirectoryAtPath 的 Swift 3 等效项是什么,在转换上述示例时我应该如何使用它?

0 投票
1 回答
65 浏览

ios - 在表格视图单元格中加载和缓存多个 UIImageView 不起作用

我有一个带有 3 个 UIImageView 的自定义表格视图单元格。我使用Haneke异步加载和缓存它们。当我向上滚动时,一些以前看到的图像随机消失。这真的很奇怪。为什么会这样?

我也尝试过 SDWebImage,但问题仍然存在。

在 setUserProfileImage 中,我使用Haneke加载和缓存我的图像:

自定义表格视图单元格:

我的表视图控制器:

0 投票
4 回答
1759 浏览

swift - Swift:在视图出现之前从异步调用中检索值

我正在使用 HanekeSwift 检索缓存的数据,然后在每次视图出现时将其设置为 swipeView 中的标签。我的代码检索数据没有问题,但是因为cache.fetch()是异步的,所以当我调用我的方法来更新视图时,我的标签设置为nil. 无论如何要告诉 swift 在加载视图之前等到我的缓存数据被检索到?

请参见下面的代码:

当我单步执行上述代码时,它总是显示视图,然后进入缓存块。如何使 viewWillAppear() 允许 updateEntries() 完成并且在执行缓存块之前不会退出它?提前致谢!

更新1:

下面的解决方案运行良好,我的调用以正确的顺序进行(我在通知块中的打印语句在缓存检索后执行),但我的视图仅在调用服务器时使用非零值更新它们的标签。也许我在通知组中混入了错误的代码?

更新 2:

此外,当我切换视图时,我会在控制台中收到此警告。我想我用上面的代码锁定了主线程

“此应用程序正在从后台线程修改自动布局引擎,这可能导致引擎损坏和奇怪的崩溃。这将在未来的版本中导致异常。”

0 投票
1 回答
288 浏览

cocoapods - Swift 3 和 Cocoapods 包的兼容性问题

xCode使用我现有的应用程序更新到版本 8 后,我被卡住了。

我使用了以下豆荚:

  • 阿拉莫菲尔
  • SwiftyJSON
  • 哈内克斯威夫特
  • 分页水平视图
  • 对讲机

我需要帮助更新Podfile,以便它将安装这些包的Swift 3 兼容版本。

我在网上到处查了,还没有解决:(

非常感谢任何帮助。

0 投票
0 回答
103 浏览

swift - Haneke(Swift)缓存图像乱序

我开发了一个菜单界面,其中包含 3 行动态加载的六边形,并允许用户在属于同一类别的不同服务中进行选择。然后我调用了我的 API 端点以获取带有相关数据的 JSON 响应,这也可以正常工作。

问题:第一次打开菜单(即菜单是动态构建的)时,图像显示顺序错误。如果我调用另一个视图然后返回相同的菜单,一切都会正确显示。当然,这种行为很烦人,但到目前为止,我解决这个问题的努力都没有成功。

这是我用于第一行六边形的代码(第二和第三在此之后依次调用:

任何帮助将不胜感激!非常感谢撒丁岛!

0 投票
1 回答
66 浏览

swift - 单元格中的图像未出现在搜索结果中

我有收藏视图并有 7 个单元格。当应用程序运行时,它显示 6 并且必须滚动才能查看第 7 个单元格。每个单元格都有一个图像,但第 7 个单元格图像直到我滚动并查看第 7 个单元格时才显示。如果我搜索第 7 个单元格,则不会出现来自第 7 个单元格的图像,而是使用第 6 个单元格图像,片刻之后它会显示原始图像。看起来它仍在加载,但如何在不使用第 6 个单元格图像的搜索后制作第 7 个图像。

我使用领域来存储图像 url 和 haneke 来显示图像

我的杂志课看起来像这样