问题标签 [kingfisher]

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 回答
2667 浏览

swift - Kingfisher 使用自定义图像视图下载多个图像

我想用翠鸟下载多张图片,并通过页面控制(如 instagram 主页)在收藏视图中显示这些图片。为此,我创建了自定义图像视图。我尝试如下,但显示的图像都是相同的,即使 url 不同。我怎样才能解决这个问题?先感谢您!

编辑

我像这样使用这种方法。

0 投票
2 回答
2259 浏览

ios - 翠鸟 iOS 图像未加载

我正在尝试使用Kingfisher动态设置 UIImageView 。上下文是在上一个可选的行的上一个屏幕上有一个tableview,然后在选择行时,详细信息uiview显示,其中包含更多信息,包括图像。我已经查看了 Kingfisher 文档,发现声明属于viewDidLoad我所拥有的,但我仍然无法加载图像。我还通过调试验证了传递给 Kingfisher 的 URL 是指向图片的链接。我认为这可能与在后台线程上设置的图像有关,但如果是这种情况,我不确定如何解决。我尝试将Kingfisher的实施移至viewWillAppearandviewDidAppear功能,即使经过较长的等待时间,它们仍然不显示图像

这是我删除了一些不相关功能的代码。

0 投票
1 回答
475 浏览

swift - 在 CollectionView 中滚动时应用程序冻结

在 CollectionView 我加载图像和FlurryAds。即使应用程序处于离线状态,我也需要显示图像,所以最初我使用KingFisher下载图像并存储在缓存中,显示活动加载器,直到所有图像都下载完毕。

这是我用来下载图像并将其存储在缓存中的代码,

并使用KingFisher在 collectionView Cell 中加载图像。

问题是当所有图像都下载到缓存中并且我导航以查看集合视图中的图像时,会显示所有图像,但有时当我快速滚动或滚动时,突然回到上一个屏幕应用程序冻结并且有强制关闭应用程序。

0 投票
1 回答
2187 浏览

ios - 仅具有屏障任务的并发队列

最近我正在阅读流行的图像缓存库Kingfisher的代码。

我对ImageDownloader. 在该下载器中,所有ImageFetchLoad(获取图像的任务)相关操作都被分派到一个名为的并发队列barrierQueue

令人困惑的部分是所有操作都是使用屏障同步调度的:

每个屏障操作都会相互阻塞,这使得队列实际上是一个串行的。因此,为什么翠鸟使用concurrent队列而不是serial一个呢?

0 投票
3 回答
255 浏览

swift - 如何在 iOS TableViewCell 上实现圆角图像?

我正在尝试以这种方式将圆形图像附加到我的自定义表格单元格中:

问题是,当视图控制器第一次显示时,图像视图仍然是方形的。只有“隐藏”的单元格具有圆形图像视图。

似乎是这篇文章中记录的问题:https ://medium.com/@adinugroho/circular-uiimageview-in-uitableview-cell-e1a7e1b6fe63

但我无法为我的实施找到解决方法。

0 投票
1 回答
417 浏览

swift - 如何使用 Kingfisher 为我的项目中的所有图像视图设置指标类型?

这就是我设置图像视图的指标类型的方式

但是如何为整个项目中的每个图像视图设置它,这样我就不必在每个视图控制器中设置它?

无论如何我可以在 appdelegate 中做些什么?

谢谢

0 投票
1 回答
762 浏览

ios - 滚动时水平collectionView冻结

我在同一个视图控制器中有一个collectionView 和tableview,具有不同的视图。我使用翠鸟下载图像。我可以毫无问题地滚动表格视图。但是当我滚动collectionview时,应用程序冻结,一段时间后应用程序崩溃并收到调试消息“来自调试器的消息:由于内存问题而终止”。

这是屏幕截图

这是我的 collectionView 方法

当我删除estimatedItemSize 时,滚动效果很好,但我无法根据标签内容调整单元格大小。

0 投票
1 回答
1338 浏览

swift - 图像缓存——如何控制图像何时被处理?

我需要在磁盘上缓存图像,但将它们限制为 20 个图像。我正在尝试Nuke图书馆。当我跑

只要我在我的视图控制器中,图像就会被缓存。当我离开视图时,下一次将再次获取图像。那么我如何制作Nuke(或其他库)将这些图像保存为特定的图像计数或时间。

在尝试之前Nuke,我只是在每次获取图像时将图像保存到应用程序的 Documents 文件夹中。我确信有更好的方法。

更新:我能够做到这一点Kingfisher

如果我理解正确,首先retrieveImage从磁盘缓存中获取图像。后来从内存缓存。只有在收到内存警告时才会释放它们。我希望确实如此。上帝帮助我们。

0 投票
1 回答
62 浏览

ios - 如果使用 pod 缓存图像并异步下载,我应该下载两次图像吗?

我是编程和 iOS 开发的新手,我尝试使用 kingfisher 异步缓存和下载图像。

我有一个 downloadURL,从该链接下载的图像将用于 2 个图像视图。对于 blurryImageView 和 posterImageView。

blurryImageView 将用作背景,如果用户的图像不在所需的垂直水平比例中,如下图所示

在此处输入图像描述

我的问题是,如果我从那个链接下载并将用于 2 个图像视图,我实际上是下载两次还是只下载一次?

这是我使用的简化代码:

正如您在上面的代码中看到的那样,图像将被异步下载,当posterImageView.kf.setImage(with: urlPoster)被触发时,图像(我假设)在 from 时仍未完成下载blurryImageView.kf.setImage(with: urlPoster)。所以我担心它会被下载两次,效率不高。我希望它只下载一次。如果我只想下载一次怎么办

0 投票
1 回答
984 浏览

ios - 如何使用 Kingfisher 在 UIButton 的 setBackgroundImage 期间设置 indicatorType

在 Kingfisher 文档中,有关于在为常规 imageView 设置图像时设置 indicatorType 的信息:

但是在为 UIButton 设置背景图片时如何设置 indicatorType 呢?