iO 上有图像缓存框架吗?

2023-12-01

我已经在使用 AFNetworking 进行异步图像下载。我想知道是否有一种方法可以存储在磁盘或核心数据上,我应该研究 SDWebImage 吗?或者您会建议采用定制解决方案。 基本上我希望有一种非常透明的方式从 url 获取图像,所以首先在 NSCache 中查找它们,如果没有找到,则在磁盘(或核心数据)上查找,如果没有找到,则再次下载异步。 感谢您的任何想法


SDWebImage 已被证明是异步图像获取和缓存的真正可靠的实现。

如果您使用网络图像作为按钮或图像视图,您甚至可以调用-(void)setImageWithURL:(NSURL *)url方法将检查缓存,为您获取图像,如果不存在,它将异步下载它并将其存储在缓存中,然后再设置它。

如果您需要其他东西的图​​像,您仍然可以通过调用以下命令从该库中受益:

SDWebImageManager *manager = [SDWebImageManager sharedManager];

// Remove in progress downloader from queue
[manager cancelForDelegate:self];

[manager downloadWithURL:yourURL delegate:self options:0];

并稍后在委托方法上检索图像:

- (void)webImageManager:(SDWebImageManager *)imageManager didFinishWithImage:(UIImage *)image
{
    // Do something with the image
}

注意

- (void)downloadWithURL:(NSURL *)url delegate:(id<SDWebImageManagerDelegate>)delegate options:(SDWebImageOptions)options

在尝试下载之前会检查缓存,因此每次需要图像时都可以安全地调用它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

iO 上有图像缓存框架吗? 的相关文章

  • NSString stringWithContentsOfFile 失败,错误代码似乎错误

    我正在尝试将文件加载到字符串中 这是我正在使用的代码 NSError error nil NSString fullPath NSBundle mainBundle pathForResource filename ofType html
  • 如何找到键盘未覆盖的视图部分(UIModalPresenationStyleFormSheet)?

    我有一个视图控制器 显示带有 UITextView 的视图 并且我想在键盘出现时调整视图的大小 以便 UITextView 不会被键盘覆盖 我几乎在所有情况下都可以正常工作 据我所知 仅当视图控制器以 ModalPresentationSt
  • 为什么performSegueWithIdentifier在viewDidLoad中不起作用?

    我试图在视图控制器上调用 viewDidLoad 后立即触发故事板转场 Segue 附加了一个标识符 当从链接到按钮或其他控件的方法内部调用时 它可以正常工作 但它在 viewDidLoad 内部不起作用 它只是默默地失败了 viewDid
  • iOS、通用链接、Swift。 continueUserActivity 未调用

    我正在为我们的 iOS 应用程序实现通用链接 这是我的一小部分 AppDelegate private func application application UIApplication openURL url URL sourceApp
  • 检测 iPhone 是否在运行时运行调试/分发构建

    是否可以在运行时检测正在运行的应用程序是否是通过调试或分发进行编译的 在项目信息中 对于调试配置 添加 DEBUG 预处理器宏 在 GCC 4 2 预处理部分 在代码中 如果您想要包含或不包含某些代码用于调试版本 则可以使用 ifdef 来
  • AppStore 提交:错误 ITMS-9000:“无效的捆绑结构 - 不允许二进制文件‘MyApp.app/BuildAgent’

    我陷入了以下错误 我根本不明白 错误 ITMS 9000 无效的捆绑结构 不允许使用二进制文件 MyApp app BuildAgent 您的应用程序可能只包含一个可执行文件 当我使用 Xcode 从 Archive 导出到 IPA 时 我
  • 从 UIPickerView 的选定行设置 UIButton 的标题

    详细场景是这样的 我使用循环创建 10 个按钮并设置 0 9 的标签 点击每个按钮时 我将调用 UIPickerView 在其中加载来自不同数组的数据 到这里我就得到了预期的结果 但我希望 pickerView 中选定的行应设置为相应按钮的
  • CALayer边框奇怪问题

    我正在向 CALayer 添加边框 但有一些奇怪的行为 在我应用的边框之后出现模糊边框 参见屏幕截图 这是我的代码 void configureLabel self hidden YES self textAlignment NSTextA
  • dyld:无法加载插入的库

    当我尝试运行 UI 和单元测试时 出现异常 dyld 无法加载插入的库 private var containers Bundle Application AutoTestingApp app Frameworks IDEBundleInj
  • iOS:生成pdf时绘制文本时如何设置字体?

    我在ios应用程序中使用drawpdf函数生成pdf 同时调用nsobject类中的drawtext函数 它根据我指定的框架和字符串清楚地绘制文本 我的代码是 void drawText NSString textToDraw inFram
  • ReactiveCocoa 将 SignalProducers 合二为一

    我正在使用 ReactiveCocoa 并且我有几个 SignalProducers let center NSNotificationCenter defaultCenter let signalProducer1 center rac
  • 将 NSData 转换回音频文件

    我已经转换了我的 caf音频文件到NSData使用以下代码行对象 NSData audioData NSData dataWithContentsOfFile MyRecorderFilePathURL path options 0 err
  • 访问目标 c 中的类方法。使用 self 还是类名?

    我正在学习 iOS 编程 并且对以下有关关键字 self 的使用的代码感到困惑 据我了解 self就像Java的this 它指的是当前实例 当我想调用类方法时 通常的方式应该是这样 PlayingCard validSuits 但是侵入实例
  • 如何在代码中编辑约束

    我有一个以 100 开始宽度限制的网页 当用户单击按钮时 我想将约束更改为 200 我试过这个 NSLayoutConstraint constrain NSLayoutConstraint constraintWithItem self
  • 图像作为电子邮件附件

    我想构建一个应用程序 我可以在电子邮件中附加图像 打开图像并将其设置为我的壁纸 我想让它跨平台 所以你能告诉我是否可以使用phonegap 或者我是否必须为iphone和android构建一个本机应用程序 您好 如果您只想通过电子邮件附加图
  • TableViewController 的 viewDidLoad 未触发

    我一直在关注这个tutorial http www appcoda com ios programming sidebar navigation menu 有一个滑出式菜单 我添加了一个 TableViewController 它将显示文章
  • 编码时捕获 NS_AVAILABLE_IOS

    我知道如何更改支持的最低操作系统IPHONEOS DEPLOYMENT TARGET 我目前正在 Xcode 4 5 下进行开发并使用 iOS 6 0 SDK 我想做的是找到一种方法 每当我使用标记的代码时在编译中抛出警告 NS AVAIL
  • 如何解决 Xcode 5 中的红色(已移动)文件?

    在 Xcode 4 中 当您要移动文件时 可以通过单击右侧菜单中的按钮并通过 Finder 选择新位置来解析文件的新位置 在 Xcode 5 中 右侧菜单中没有按钮 我还没有找到任何方法通过右键单击文件或顶部菜单栏选项来指定文件的新位置 在
  • 从应用程序启动 iPhone 设置屏幕?

    我正在开发一个应用程序 我希望按下按钮时 iPhone 设置屏幕应该打开 苹果有访问限制吗 到底能不能 如果能的话怎么办 不 你不能那样做 但是 作为替代方案 您可以使用这个框架 http www inappsettingskit com
  • 如何在 UICollectionView 中将行居中?

    我有一个UICollectionView与随机细胞 有什么方法可以让我将行居中吗 默认情况下它是这样的 x x x x x x x x x x x x x x 这是所需的布局 x x x x x x x x x x x x 我必须做这样的事

随机推荐

  • 使用 XSD 文件生成 XML 文件

    如何从 XSD 文件生成 XML 文件 假设我们有 Test xsd 文件 如下所示
  • 未捕获的类型错误:elem.nodeName.toLowerCase 不是函数 Jquery

    我正在开发一个项目 该项目运行良好 但今天突然显示类型错误 未捕获的类型错误 elem nodeName toLowerCase 不是函数 Jquery 下面是我收到错误的代码 A method for determining if a D
  • 如何点击更改模型的颜色,然后将其改回原来的颜色?

    我正在尝试在 ARKit 中创建一个功能 如果用户点击 modelEntity 它的颜色就会更改为蓝色 这样就表明它已被选中 但是 如果用户点击另一个实体 则先前选择的实体的材质会变回选择之前的状态 所以我可以用这段代码改变它的颜色 let
  • boost RNG 的线程安全

    我有一个循环 应该通过插入一个 openmp pragma 来很好地并行化 boost normal distribution
  • MATLAB - 从 jpeg_write.c 创建 maxmaci64 时出错

    我在使用来自 jpeg 工具箱的 jpeg read c 和 jpeg write c 的 Mex 制作 mexmaci64 文件时遇到问题 我问了我的问题herejpeg read 的问题解决了 但当我编译jpeg write c时仍然有
  • 如何使用jquery Ajax函数在IE浏览器中读取xml数据

    我需要在 AJAX 函数中使用 jquery 读取 xml 数据 这在 firefox 中工作正常 但是我被 IE 浏览器困住了 我无法读取 xml 程序需要从 xml 文件中读取 proptype 我有放置警报警报 theXml 但在 I
  • 如何在循环中使用 writeHexByte 显示到屏幕上?

    我在启动时显示了 displayChar 字符 现在我如何添加 writeHexBytes 然后在循环中使用 writeHexByte 和 writeHexWord 在屏幕上显示 写入十六进制字节 需要一个 8 位寄存器 通过调用显示它 转
  • Java:查找文件的最后一行是否为空

    我有一个关于需要用 Java 完成的学校作业的问题 我需要从文件加载数据并检查这些文件中的错误 我用 a 读取了该文件bufferedReader它完美地工作到文件末尾 如果最后一行为空 它会忽略该行 我知道如何检查空行 但最后一行根本没有
  • 运行循环实际上是如何工作的

    这个月初我问了这个问题 什么是运行循环 在阅读了答案并做了一些尝试后 我让它工作了 但我仍然不完全理解它 如果运行循环只是与线程关联的循环 并且它不会在幕后生成另一个线程 那么我的线程 主线程以保持简单 中的任何其他代码如何执行而不会被 阻
  • 如何在 Spring Jms Tibjms 中在多个虚拟机之间共享发布在主题上的消息

    我的应用程序正在使用发布到主题的消息 我有 3 台服务器 我的应用程序代码正在运行 在当前的实现中 消息被分发到所有正在运行的虚拟机 即每个消费者都会收到消息的副本 我的要求是每个消费者都应该收到不同的消息 即没有两个消费者应该收到相同的消
  • 在 CSS3/HTML5 中使用自定义字体?

    我的 CSS 样式表开头有这段代码 当然链接到我的 index html font face font family Calibri src local Calibri local Calibri url fonts Calibri Bol
  • React Router 默认路由重定向到 /home

    我对反应以及我选择使用的路由器和引导程序库非常陌生 它们基本上只是react router bootstrap 我只是对事物有了一些感觉 我想制作一个具有一些基本 url 导航的网络应用程序 我有 4 个部分 主页浏览添加和关于 单击链接效
  • 将 PDF 转换为 PNG

    我正在尝试将 PDF 转换为 PNG 图像 至少是一个封面 我已经使用 pdftk 成功提取了 PDF 的第一页 我正在使用 imagemagick 进行转换 convert cover pdf cover png 这是可行的 但不幸的是
  • 在 Swift 中逐像素地对图像应用视觉效果

    我的大学任务是创建视觉效果并将其应用于通过设备摄像头捕获的视频帧 我目前可以获取图像并显示 但无法更改像素颜色值 我将示例缓冲区转换为 imageRef 变量 如果将其转换为 UIImage 一切正常 但现在我想将 imageRef 逐像素
  • Mapbox GL 3D 单体建筑高光选择

    如何将鼠标悬停在一个 3D 建筑物上时突出显示它 OSM 建筑之类的东西突出了特色 看来mapbox street v7的建筑图层要素属性太少了 只包括 拉伸 高度 最小高度 类型 地下 没有任何独特的属性来区分这座建筑 有没有办法包含建筑
  • 如何运行Python CGI脚本

    我以前从未设置过服务器 更不用说Python服务器了 我有点迷失了 我如何使用以下代码 我尝试将其放入 cgi bin 目录中 但没有成功 它返回了内部服务器错误 看看这个here usr bin env python Funf Open
  • nameof 的目的是什么?

    6 0版本新增了一个功能nameof 但我无法理解它的目的 因为它只是获取变量名称并在编译时将其更改为字符串 我认为它在使用时可能有一些目的
  • 更改 WooCommerce 我的帐户客户订单的排序

    在 WooCommerce 中 客户可以登录其帐户并查看订单历史记录 默认情况下 订单首先显示最新的订单日期 我想扭转这一局面 因此日期最早的订单首先显示 我找不到任何地方可以更改 ASC DESC 的排序 查看模板文件woocoommer
  • Powershell 输出文件在从自身传送时会清除文件

    我正在使用以下命令 get content C somepath Setup csproj select string pattern
  • iO 上有图像缓存框架吗?

    我已经在使用 AFNetworking 进行异步图像下载 我想知道是否有一种方法可以存储在磁盘或核心数据上 我应该研究 SDWebImage 吗 或者您会建议采用定制解决方案 基本上我希望有一种非常透明的方式从 url 获取图像 所以首先在