IOS学习——SDWebImage配置及使用

本文详细介绍了如何安装和配置SDWebImage库,并通过示例展示了如何在项目中使用该库加载网络图片。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.SDWebImage安装配置一

下载SDWebImage:https://github.com/rs/SDWebImage

Installation

There are two ways to use this in your project: copy all the files into your project, or import the project as a static library.

Add the SDWebImage project to your project

Right-click on the project navigator and select "Add Files to "Your Project":

Add Library Project

In the dialog, select SDWebImage.xcodeproj:

Add Library Project Dialog

After you’ve added the subproject, it’ll appear below the main project in Xcode’s Navigator tree:

Library Added

You may want to add the SDWebImage directory in your project source tree as a submodule before adding it to your project.

Add build target dependencies

In you application project app’s target settings, find the "Build Phases" section and open the "Target Dependencies" block:

Add Target Dependencies

Click the "+" button and select "SDWebImage ARC" (you may choose the non ARC target if you want to support iOS <3 or the ARC+MKAnnotation if you need MapKit category):

Add Target Dependencies Dialog

Open the "Link Binary With Libraries" block:

Add Library Link

Click the "+" button and select "libSDWebImageARC.a" library (use non ARC version if you chose non ARC version in the previous step):

Add Library Link Dialog

Click the "+" button again and select the "ImageIO.framework", this is needed by the progressive download feature:

Add ImageIO Framework

If you chose to link against the ARC+MKAnnotation target, click the "+" button again and select "MapKit.framework":

Add MapKit Framework

Add headers

Open the "Build Settings" tab, in the "Linking" section, locate the "Other Linker Flags" setting and add the "-ObjC" flag:

Other Linker Flags

In the "Search Paths" section, locate "Header Search Paths" (and not "User Header Search Paths") and add two settings:”$(TARGET_BUILD_DIR)/usr/local/lib/include” and ”$(OBJROOT)/UninstalledProducts/include”. Double click on the<Multiple values> to pop out the box and click on the "+" icon to add each of them. Make sure to include the quotes here:

User Header Search Paths

Import headers in your source files

In the source files where you need to use the library, import the header file:

#import <SDWebImage/UIImageView+WebCache.h>

Build Project

At this point your workspace should build without error. If you are having problem, post to the Issue and the community can help you solve it.

Fixing indexing

If you have problem with auto-completion of SDWebImage methods, you may have to copy the header files in your project.

2.SDWebImage安装配置2

下载:https://github.com/rs/SDWebImage/wiki/Download-Compiled-Framework

https://github.com/rs/SDWebImage#installation

Installation

There are two ways to use this in your project: copy all the files into your project, or import the project as a static library.

Add the SDWebImage project to your project

  • Download and unzip the last version of the framework from the download page
  • Right-click on the project navigator and select "Add Files to "Your Project":
  • In the dialog, select SDWebImage.framework:
  • Check the "Copy items into destination group's folder (if needed)" checkbox

Add dependencies

  • In you application project app’s target settings, find the "Build Phases" section and open the "Link Binary With Libraries" block:
  • Click the "+" button again and select the "ImageIO.framework", this is needed by the progressive download feature:

Add Linker Flag

Open the "Build Settings" tab, in the "Linking" section, locate the "Other Linker Flags" setting and add the "-ObjC" flag:

Import headers in your source files

In the source files where you need to use the library, import the header file:

#import <SDWebImage/UIImageView+WebCache.h>

Build Project

At this point your workspace should build without error. If you are having problem, post to the Issue and the community can help you solve it.

3.使用

https://github.com/rs/SDWebImage#installation

#import <SDWebImage/UIImageView+WebCache.h>

...

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *MyIdentifier = @"MyIdentifier";

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:MyIdentifier];

    if (cell == nil)
    {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault
                                       reuseIdentifier:MyIdentifier] autorelease];
    }

    // Here we use the new provided setImageWithURL: method to load the web image
    [cell.imageView setImageWithURL:[NSURL URLWithString:@"http://www.domain.com/path/to/image.jpg"]
                   placeholderImage:[UIImage imageNamed:@"placeholder.png"]];

    cell.textLabel.text = @"My Text";
    return cell;
}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值