自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

转载 AFNetworking 知识点1--NSCopying NSMutableCopying

1.NSCopying————>- (id)copy;NSCopying是一个与对象拷贝有关的协议。如果想让一个类的对象支持拷贝,就需要让该类实现NSCopying协议。NSCopying协议中的声明的方法只有一个- (id)copyWithZone:(NSZone *)zone。当我们的类实现了NSCopying协议,通过类的对象调用copy方法时,cop...

2018-03-30 19:43:00 316

转载 AFNetworking 知识点1--NSCoding NSSecureCoding

NSData对象转为NSData 这个过程称为序列化,NSData转对象称为反序列化。任何对象转NSData,都需要遵循一个协议,就是NSCoding。NSCoding 是把数据存储在iOS和Mac OS上的一种极其简单和方便的方式,把模型对象直接转变成一个文件,然后再把文件重新加载到内存里,并不需要任何文件解析和序列化的逻辑。通过扩展你的数据类来支持encode 和...

2018-03-30 19:42:00 114

转载 4 AFURLRequestSerialization

这个方法就是AFHTTPSessionManager 中构建NSMutableRequest的方法,分三步进行讲解。第一步1.通过URLString 构建NSURL2.通过NSURL构建NSMutableURLRequest,并设置HTTPMethod第二步AFHTTPRequestSerializerObservedKeyPaths()...

2018-03-30 19:42:00 144

转载 3 AFURLSessionManager

根据普通的请求,下载,上传,分出了三种构建Task。分别是:-dataTaskWithRequest —>NSURLSessionDataTask-uploadTaskWithRequest ->NSURLSessionUploadTask-downloadTaskWithRequest —>NSURLSessionDownloadTask...

2018-03-30 19:41:00 94

转载 2 AFHTTPSessionManager

AFHTTPSessionManager 是 AFURLSessionManager 的子类其中包含以下两个属性,可以进行自定义,支持json,propertyLish,xml等格式。AFHTTPRequestSerializerAFHTTPResponseSerializer默认情况下,初始化生成的返回时json格式。AFHTTPRequest...

2018-03-30 19:41:00 243

转载 1 AFNetworking 知识点列举

AFNetworking 知识点:1.NSURLSession2.Runtime 方法置换,给分类添加属性 手动KVO等方法置换:http://www.cnblogs.com/kesalin/archive/2012/01/05/objc_method_swizzling.html分类:https://tech.meituan.com/DiveIntoCateg...

2018-03-30 19:40:00 105

转载 SDWebimage相关知识点1-- NSOperation

GCDGCD是最常用的管理并行代码和执行异步操作的Unix系统层的API。GCD构造和管理队列中的任务。队列是按先进先出(FIFO)管理对象的数据结构。队列类似电影院的售票窗口,票的销售是谁先到谁先服务。在等待线前面的人先去买他们的门票,在其余的后抵达的人之前。队列在计算机科学中是相似的,因为第一个添加到队列的对象也是第一个从队列中删除的对象。操...

2018-03-30 19:39:00 124

转载 SDWebimage相关知识点1-- 线程

一线程(thread)是组成进程的子单元,操作系统的调度器可以对线程进行单独的调度。实际上,所有的并发编程 API 都是构建于线程之上的 —— 包括 GCD 和操作队列(operation queues)。多线程可以在单核 CPU 上同时(或者至少看作同时)运行。操作系统将小的时间片分配给每一个线程,这样就能够让用户感觉到有多个任务在同时进行。如果 CPU 是多核的,...

2018-03-30 19:39:00 128

转载 1.UIButton+WebCache UIImageView+WebCache

1.通过分类的方式,对外暴露接口。2.给分类添加属性,通过imageURLStorageKey值,将self 和 字典进行绑定。通过sd_imageURLForState等方法进行取值。3.调用UIView +WebCache 的sd_internalSetImageWithURL方法 ,设置operationKey值。button 设置图片——>...

2018-03-30 19:38:00 147

转载 4 SDWebImageManager

先从downloadImageWithURL方法讲起:每次方法调用的时候,就会创建一个SDWebImageCombinedOperation对象。有三个属性,并遵循了SDWebImageOperation代理。cancelled 是用来标记状态。cancelBlock 是用来回调。cacheOperation 是磁盘查找时,创...

2018-03-30 19:37:00 101

转载 3.UIView + webCache

从UIView + webCache开始:1. [self sd_cancelCurrentImageLoad];同一个imageview,请求避免请求多次。 每一个imageview 会有一个属性( operationDictionary),存放 SDWebImageOperation对象或者集合,来实现取消操作。2. [self sd_setImage...

2018-03-30 19:37:00 123

转载 2.UIView + WebCacheOperation

1. - (NSMutableDictionary *)operationDictionary通过loadOperationKey值 ,将imageview和operations字典进行绑定。获取到 loadOperationKey与绑定的imageview 上的 operations 字典 ,如果之前有过绑定,那就会有值。如果该字典初始化的话,就返回该字...

2018-03-30 19:37:00 109

转载 5 SDWebImageDownloader

- (void)addProgressCallback:(SDWebImageDownloaderProgressBlock)progressBlock andCompletedBlock:(SDWebImageDownloaderCompletedBlock)completedBlock forURL:(NSURL *)url createCallback:(SDWebImageN...

2018-03-30 19:36:00 93

转载 6 SDWebImageDownloaderOperation类

继承于NSOperation类重写了-start方法。手动管理操作的状态,只有发送isFinished的KVO消息时,才认为是operation结束。为了让操作队列能够捕捉到操作的改变,需要将状态的属性以配合KVO的方式进行实现。isExecuting代表任务正在执行中isFinished代表任务已经执行完成isCancelled代表任务已...

2018-03-30 19:34:00 96

转载 8 SDWebImage 流程

流程图:1.UIimageView + WebCache 类 sd_setImageWithURL方法,实现异步加载图片。在分类中,实现 sd_imageURL属性,保存url .将placeHolder 付给image2. SDWebImageManager(单利),调用 downloadImageWithURL方法检验url 是NSString...

2018-03-30 19:33:00 72

转载 7 SDImageCache

- (NSOperation *)queryDiskCacheForKey:(NSString *)key done:(SDWebImageQueryCompletedBlock)doneBlock作用:缓存中查找现在memCache中查找,再在disk中查找(如果找到,存入缓存中)。- (void)storeImage:(UIImage *)image recalcu...

2018-03-30 19:33:00 116

转载 厚积薄发-网络层架构

基于networking 框架 在项目中实践并得以应用。网址:http://www.jianshu.com/p/05a59197a7c7demo:https://github.com/YasinZhou/NetWorkingDemo随着项目的体积越来越大,业务扩展越来越高,网络层出现了一下几种问题。1.项目中,所有的接口Api 写着了一个.h文件里,体积庞大,查...

2017-02-20 21:07:00 251

转载 厚积薄发 - 分类

1. 分类的用处可以把类的实现分开在几个不同的文件里面。这样做有几个显而易见的好处,a)可以减少单个文件的体积 b)可以把不同的功能组织到不同的category里 c)可以由多个开发者共同完成一个类 d)可以按需加载想要的category 等等。声明私有方法模拟多继承把framework的私有方法公开2.分类和扩展扩展看起来像一个匿名的分类,但是exten...

2016-10-20 20:01:00 163

转载 厚积薄发 - 关于runtime的几个问题

问题http://blog.sunnyxx.com/2014/11/06/runtime-nuts/ 问题来源。(1) 下面的代码输出什么?@implementation Son : Father- (id)init { self = [super init]; if (self) { NSLog(@"%@", NSStrin...

2016-10-11 22:09:00 93

转载 厚积薄发-MJRefresh

MJRefresh-headerheader的使用self.tableView.header = [MJRefreshNormalHeader headerWithRefreshingTarget:self refreshingAction:@selector(loadNewData)];或:self.tableView.header = [MJRefreshNormal...

2016-10-10 09:16:00 118

转载 厚积薄发-架构篇

厚积薄发-架构篇转载于:https://www.cnblogs.com/JShuo/p/5944563.html

2016-10-10 09:15:00 89

转载 厚积薄发-Aspects

厚积薄发-Aspects转载于:https://www.cnblogs.com/JShuo/p/5940187.html

2016-10-08 21:07:00 133

转载 厚积薄发-JSPath

1.require在全局作用域上创建一个同名变量,指向一个对象。{ __isCls: 1, __clsName: "UIView"}2.UIView.alloc__c元函数 :调用一个不存在方法时,转发到一个指定函数去执行。在oc执行JS脚本前,通过正则把所有的方法调用改成调用__c函数,再执行JS脚本。如:UIView.alloc()...

2016-10-08 21:06:00 89

转载 厚积薄发-Runtime总结

1.基础介绍上半年看了一些关于runtime的知识点,感觉受益匪浅,而且多次用到了这些知识,包括公司的架构搭建,JSPath,Aspect,MJReferch中都用到了runtime。这篇文章算是总结了自己所掌握的知识,如果有讲的不对的地方,请大家指出。共同进步~O(∩_∩)O~问题:1.id类型为何能指向任意的oc对象?   2.oc是动态语言,其动态是如何实现的...

2016-10-08 21:06:00 91

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除