如何安装 SDWebImage

Posted

技术标签:

【中文标题】如何安装 SDWebImage【英文标题】:How to install SDWebImage 【发布时间】:2015-08-31 03:58:04 【问题描述】:

我需要在我的应用程序中管理照片,并且阅读了很多关于 SDWebImage 框架的信息,这似乎是最好的方法。 但是我发现安装起来非常困难。我不了解 Ruby,也从未使用过 podfile,所以我通过下载最新的 SDWebImagefolder 和框架并将它们添加到我的项目中来安装它。但是,当我尝试使用建议的导入导入到我的视图控制器时:

#import <SDWebImage/UIImageView+WebCache.h>
#import "UIImageView+WebCache.h"

我在#import 上找不到一个文件,然后如果我按照建议将其更改为“SDWebImage/UIImageView+WebCache.h”,我会在以下位置找到一个文件:#import UIImageView+WebCache.h,即使我在我的项目中打开SDWebImage文件夹时可以清楚地看到它!当我尝试使用 sd_setImageWithUrl 方法时,我猜测这些错误也会导致未找到错误。

这是我的项目的屏幕截图:

我希望我能得到一些帮助,因为这个框架看起来有很好的功能。非常感谢任何帮助。谢谢

【问题讨论】:

您能告诉我们您为添加 sdwebimage 所遵循的所有步骤吗? 我认为这有点类似于:***.com/q/32292187/849616 或者至少答案是。 【参考方案1】:

当您在项目中添加SDWebImage 文件夹时,请选择以下选项。将文件夹的副本添加到目标项目并创建组。

然后你必须像这样写

#import "UIImageView+WebCache.h"

并确保添加到所有要使用该库的目标。

Github 的文档:

将 SDWebImage 项目添加到您的项目中

从下载页面下载并解压最新版本的框架 右键单击项目导航器并选择“将文件添加到“您的项目”: 在对话框中,选择 SDWebImage.framework: 选中“将项目复制到目标组的文件夹(如果需要)”复选框

或者您可以使用cocoa pods 作为其他答案建议。

编辑:示例:

[self.imageView sd_setImageWithURL:[NSURL URLWithString:"yoururl.png"] placeholderImage:[UIImage imageNamed:@"placeholder.png"]];

【讨论】:

感谢 Iashish 解决了导入问题,但是我仍然在我的 sd_setImageWithUrl 行上收到“没有可见的@interface for'UIImage'声明选择器'sd_setImageWithURL placeholder image”错误...... .... [photoImageView.image sd_setImageWithURL:url placeholderImage: [UIImage imageNamed:@"placeholder1"]]; 试试photoImageView sd_setImageWithURL 而不是photoImageView.imgae !! @Kitcc【参考方案2】:

您可以使用CocoaPods 来管理项目中的库。

要将 SDWebImage 添加到您的项目中,您应该将此行添加到您的 pod file:

pod 'SDWebImage', '~>3.7'

UPD

要使用 CocoaPods,您应该安装它,要创建它,您可以打开终端并复制/粘贴这一行:

  sudo gem install cocoapods

下一步,您应该在包含项目文件的目录中创建 Podfile。 Pods 它是文本文件(您可以使用 xCode 或其他文本编辑器创建它(仅不要使用 Writer,它使用不正确的字符用于“'”)。

创建 Podfile 后,你应该在终端下一行运行:

pod update

它命令会创建一个工作区文件,这个文件你将用来打开你的项目。 CocoaPods 的 home page 上显示的所有说明。

【讨论】:

你能告诉我如何打开我的 pod 文件并添加这一行吗?我确实下载了一个 Cocoapods 入门教程,但里面全是 Ruby,我根本无法理解需要什么。 @Kitcc 相同的解释但有更多细节:***.com/a/32295123/849616 我已经有 AFNetworking 的 pod 文件,所以我需要为 SDWebImage 创建单独的 POD 文件,或者我可以写 --------------pod 'SDWebImage', ' ~>3.7'---------------------在现有的 pod 文件中? 您应该为每个项目使用一个 Pod 文件(参见 CocoaPods 主页,标签“开始”)。【参考方案3】:

我最近遇到了这个问题,解决这个问题的一种不那么侵入性的方法是在标题搜索路径(所有 3 个实例)中添加一个条目,内容为 ./SDWebImage/(假设这是框架所在的位置)所以它在查找包含时会考虑该文件夹。

【讨论】:

【参考方案4】: 我认为您必须为SDWebImage 库使用Cocoa Pod 文件。 init pod 文件。 install Pod 文件。 然后update 那个 pod 文件。

平台:ios,'7.0'

来源'https://github.com/CocoaPods/Specs.git'

pod 'SDWebImage','3.7.1'

pod 'UIActivityIndi​​cator-for-SDWebImage'

然后你就可以导入以下文件了。

#import "UIImageView+UIActivityIndicatorForSDWebImage.h"

【讨论】:

我希望你实际上添加了指令而不是高级指令,对于我们这些没有 Cocoapods 背景的人。这些说明没有帮助。

以上是关于如何安装 SDWebImage的主要内容,如果未能解决你的问题,请参考以下文章

SDWebImage - 如何从缓存加载图像?

如何从 SDWebImage 获取图像大小?

如何在 SDwebimage 中使用成功和失败块

如何获取缓存图像 SDWebImage 的数据

如何在 SDWebImage 中显示活动指示器

如何从按钮的 imageView 中删除缓存的 SDWebImage