【iOS开发】关于图片加载的第三方框架SDWebImage的使用

SDWebImage是一个第三方框架,用于加载网络图片,还有其他一些好的功能

使用步骤

下载地址

https://github.com/rs/SDWebImage

下载以后解压,解压以后是下图

然后将文件中的SDWebImage文件夹拖到项目中,然后在项目中使用

使用框架

#import "SDWebImage/UIImageView+WebCache.h"//引入头文件

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

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:ID];

    if(cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:ID];
    }

    NSString *imageUrl = [NSString stringWithFormat:@"http://192.168.1.101:8080/TFServer/%@", video.image];

    //使用这个框架
    [cell.imageView setImageWithURL:[NSURL URLWithString:imageUrl] placeholderImage:[UIImage imageNamed:@"4.jpg"]];

    return cell;
}
时间: 2024-10-08 19:02:41

【iOS开发】关于图片加载的第三方框架SDWebImage的使用的相关文章

IOS开发之异步加载网络图片并缓存本地实现瀑布流(二)

/* * @brief 图片加载通用函数 * @parma imageName 图片名 */ - (void)imageStartLoading:(NSString *)imageName{ NSURL *url = [NSURL URLWithString:imageName]; if([_fileUtil hasCachedImage:url]){ UIImageView *imageView = [[UIImageView alloc] init]; NSString *path = [_

vue开发之图片加载不出来问题解决

在使用vue开发项目的时候,经常会遇到的一个问题就是:图片加载不出来.下面是我总结的几种图片加载不出来的情况及解决办法. 一.项目打包完成后,打开整体空白 1.路径问题 原因 在vue+webpack的项目中,项目打包之后的css和js的引用路径是绝对路径,项目部署之后会将静态当成根目录,就造成了文件引用路径的错误. 解决办法 通过修改配置文件,将绝对路径改为相对路径. 具体操作如下: 1.vue-cli 3.0版本之前 配置config下面的index.js中bulid模块导出的路径.因为in

iOS 正确选择图片加载方式

正确选择图片加载方式能够对内存优化起到很大的作用,常见的图片加载方式有下面三种: //方法1 UIImage *imag1 = [UIImage imageNamed:@"image.png"]; //方法2 UIImage *image2 = [UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"image.png" ofType:nil]]; //方法3 NSData

iOS开发一些经常用到的第三方框架

开发iOS一年多了,发现很多知识需要总结,就比如iOS中我们需要用到的一些第三方类库,可以说iOS开发里面有太多的第三方类库,但我们经常用到的也就那几个,在这里我简单的做了以下总结,供大家相互学习 Reachability 检测网络连接 用来检查网络连接是否可用:包括WIFI和WWAN(3G/EDGE/CDMA等)两种工作模式. 现在有更好的替代品:https://github.com/tonymillion/Reachability,比Apple提供的兼容性更好,而且更加好用,更具体的使用方法

iOS开发:UITableView加载多张照片导致内存上涨的问题

最近在写一个文件管理的页面,里面功能挺多的,有缩略图下载(socket),有文件下载(http). 说说缩略图下载这一块,我的UITableView的一个cell要加载四张缩略图,iPhone5s的屏幕能加载8行.大概UI上是这样布局的.(另外缩略图需要一张张下载) 刚开始进到文件管理界面,内存占用20几M,随着缩略图不断下载下来内存在上涨,我不断的往上拉,内存一值在涨.达到一定值app出现闪退.大概是300多M的时候闪退.什么原因造成的呢? 先看下图: 我是这样写的:建立一个对象,这个对象有一

iOS Cell异步图片加载优化,缓存机制详解

最近研究了一下UITbleView中异步加载网络图片的问题,iOS应用经常会看到这种界面.一个tableView上显示一些标题.详情等内容,在加上一张图片.这里说一下这种思路. 为了防止图片多次下载,我们需要对图片做缓存,缓存分为内存缓存于沙盒缓存,我们当然两种都要实现.由于tableViewCell是有重用机制的,也就是说,内存中只有当前可见的cell数目的实例,滑动的时候,新显示cell会重用被滑出的cell对象.这样就存在一个问题: 一般情况下在我们会在cellForRow方法里面设置ce

[iOS开发]WKWebView加载JS

最近项目要用webView加载js文件,挺同事说WKWebView比UIWebView更加好用,于是我今天就试试,百度一发,自己写了个demo. 先看我写的代码,然后再来看WKWebView跟UIWebView的区别: 首先,遵循这两个协议WKNavigationDelegate,WKScriptMessageHandler. 接着,获取JS文本. JS交互 - (void)getJS { NSString * js = @"window.webkit.messageHandlers.obser

iOS开发中懒加载的使用和限制

1.在开发过程中很多时候,很多控件和对象需要alloc为了,提高开发效率使得懒加载得以产生. 2.下边用代码解释: 1 - (NSMutableArray *)newsArr{ 2 if (!_newsArr) { 3 self.newsArr = [NSMutableArray array];//1 4 5 // 2. _newsArr = [[NSMutableArray alloc]init]; 6 7 // 3. _newsArr = [NSMutableArray array]; 8

iOS开发之——懒加载

★懒加载即延时加载,即当对象需要用到的时候再去加载.其实就是重写对象的get方法,当系统或者开发者调用对象的get方法时,再去加载对象. ★注意: 1. 如果是懒加载的话则一定要注意先判断是否已经有了,如果没有那么再去进行实例化            2. 在getter方法里切勿使用self.自己,因为self.自己会调用getter方法,造成死循环 ★使用懒加载的好处: 1. 不必将创建对象的代码全部写在viewDidLoad方法中,代码的可读性更强            2. 每个控件的g