摘要: Get请求: AFHTTPSessionManager *manager = [AFHTTPSessionManager manager]; [manager GET:URL parameters:nil progress:^(NSProgress * _Nonnull downloadProgre 阅读全文
posted @ 2017-03-31 14:31 fuchaowen 阅读(111) 评论(0) 推荐(0) 编辑
摘要: 加密解密的举例 其他平台中经常会计算MD5值,在ios平台中也提供了该方法,首先需要导入头文件 #import <CommonCrypto/CommonDigest.h> 方法CC_MD5可以获取MD5的16个字符的数组,再通过%02X的形式输出即可获取32位MD5值。 @implementatio 阅读全文
posted @ 2017-03-31 14:13 fuchaowen 阅读(299) 评论(0) 推荐(0) 编辑
摘要: 高级加密标准(Advanced Encryption Standard,AES),又称Rijndael加密法。 以下实现代码中分别为NSData和NSString增加了一个Category。使用时直接调用即可。 需要注意的是,AES并不能作为HASH算法,加密并解密后的结果,并不一定与原文相同,使用 阅读全文
posted @ 2017-03-31 14:11 fuchaowen 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 1.assign是指针赋值,不对引用计数操作,使用之后如果没有置为nil,可能就会产生野指针;而weak一旦不进行使用后,永远不会使用了,就不会产生野指针! 2.weak只对对象类型时使用。assign只对基础数据类型时使用 阅读全文
posted @ 2017-03-31 14:08 fuchaowen 阅读(137) 评论(0) 推荐(0) 编辑
摘要: Copy,Strong的区别需要了解点内存管理的知识,Strong是ARC下引入的修饰,相当于手动管理内存(MRC)下的retain,在相关代码下,常常看到有的人用copy修饰NSString,NSArray,NSDictionary..等存在可变与不可变之分的对象,常常会用copy,而不是stro 阅读全文
posted @ 2017-03-31 14:06 fuchaowen 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 面向对象的程序在运行的时候会创建一个复杂的对象图,经常要以二进制的方法序列化这个对象图,这个过程叫做Archiving. 二进制流可以通过网络或写入文件中(来源于某教材的一段话) 本人的理解是当你于写数据需要本地存储时,即将你的数据写到硬盘上的时候,你就必须对他进行序列化,转换成二进制文件,从而便于 阅读全文
posted @ 2017-03-31 14:05 fuchaowen 阅读(167) 评论(0) 推荐(0) 编辑
摘要: RunTime简称运行时。就是系统在运行的时候的一些机制,其中最主要的是消息机制。对于C语言,函数的调用在编译的时候会决定调用哪个函数( C语言的函数调用请看这里 )。编译完成之后直接顺序执行,无任何二义性。OC的函数调用成为消息发送。属于动态调用过程。在编译的时候并不能决定真正调用哪个函数(事实证 阅读全文
posted @ 2017-03-31 14:01 fuchaowen 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 由于项目的需求,最近做了一个可以定义item不同的高度,并且可以显示不同item的瀑布流,拿出来供大家参考。 #import <UIKit/UIKit.h> typedef CGFloat(^itemHeightBlock)(NSIndexPath* index); @interface Water 阅读全文
posted @ 2017-03-31 13:31 fuchaowen 阅读(217) 评论(0) 推荐(0) 编辑
摘要: 几乎所有的ios app中都会用到uitableview,如果每个tableview都有不同的cell(几乎所有app都会不同),或者说有一个uitableview需要在一个tableview中显示不同的cell,那么逐一写uitableview对于开发者来说是很烦的事情,下面我就用factory模 阅读全文
posted @ 2017-03-31 11:33 fuchaowen 阅读(201) 评论(0) 推荐(0) 编辑