01 2016 档案
摘要:懒加载,又称为延迟加载。说的通俗一点,就是在开发中,当程序中需要利用的资源时。在程序启动的时候不加载资源,只有在运行当需要一些资源时,再去加载这些资源。 我们知道iOS设备的内存有限,如果在程序在启动后就一次性加载将来会用到的所有资源,那么就有可能会耗尽iOS设备的内存。这些资源例如大量数据,...
阅读全文
摘要:B要传值给A1.控制器B中要有一个Block:typedef void (^MyBlock)(NSString* str1,NSString* str2);str1和str2里存放着要传递的参数2.还要有一个以Block为参数的方法-(void)chuanzhi:(MyBlock)block{ bl...
阅读全文
摘要:控制器B要传值给控制器A1.需要一个协议,协议里有一个方法,这个方法的参数即是要传递的参数@protocol chuanzhi @required-(void)chuanzhi:(NSString*)str1 WithString2:(NSString*)string2;@end2.需要控制器B中有...
阅读全文
摘要:1.创建plist文件-(void)creatPlist{ //1.创建plist文件的路径(plist文件要存储的本地路径) NSString *filePath = [NSHomeDirectory() stringByAppendingString:@"/Documents/myPlist.p...
阅读全文
摘要:对下图XML文件进行解析:person.xml可以把这个XML数据的根目录看做是一个数组,数组里存放了4个叫person的字典(这四个对象通过id来区分),字典里有三个键值对(name、personID、age)1.解析XML文件前的准备:(1)要实现 协议。(2)实现几个代理方法://1.开始解析...
阅读全文
摘要:1.代码创建json文件,并保存到本地第一步.设置json文件的保存路径NSString *filePath = [NSHomeDirectory() stringByAppendingString:@"/Documents/myJson.json"];NSLog(@"%@",filePath);第...
阅读全文
摘要:1.添加数据添加数据的步骤:(1)获得工程中的模型数据的bundle路径 读取数据模型中的模型文件(2)确定要把数据存储到哪里(本地地址)(3)把工程中的数据模型中的数据 持久化存储到 本地 并绑定上下文 (4) 创建模型子类的对象,并完成赋值 (5)保存上下文(1)获得工程中的模型数据的bundl...
阅读全文
摘要:GCD默认已经提供了全局的并发队列供整个应用使用,所以可以不用手动创建。 创建全局队列的函数为dispatch_queue_t q = dispatch_get_global_queue(long identifier, unsigned long flags) 参数类型为:long ident...
阅读全文
摘要:...................死锁的第一种情况:....................NSLog(@"=================4");dispatch_sync(dispatch_get_main_queue(), ^{NSLog(@"=================5");}...
阅读全文
摘要:使用Group实现:先执行一系列操作(在group中),执行完成后再执行别的操作。1.创建group及任务队列(目的是让group中的所有任务执行完再执行别的任务) dispatch_group_t group = dispatch_group_create(); //创建一个group disp...
阅读全文
摘要:iOS开发多线程篇—GCD介绍一、简单介绍1.什么是GCD?全称是Grand Central Dispatch纯C语言,提供了非常多强大的函数2.GCD的优势GCD是苹果公司为多核的并行运算提出的解决方案GCD会自动利用更多的CPU内核(比如双核、四核)GCD会自动管理线程的生命周期(创建线程、调度...
阅读全文
摘要:一、并发数(1)并发数:同时执⾏行的任务数.比如,同时开3个线程执行3个任务,并发数就是3(2)最大并发数:同一时间最多只能执行的任务的个数。(3)最⼤大并发数的相关⽅方法- (NSInteger)maxConcurrentOperationCount;- (void)setMaxConcurren...
阅读全文
摘要:在使用NSMutableDictionary的时候经常会使用setValue forKey与setObject forKey,他们经常是可以交互使用的,代码中经常每一种的使用都有。1,先看看setValue: forKey:的定义@interfaceNSMutableDictionary(NSKey...
阅读全文
摘要:RunLoop 是 iOS 和 OSX 开发中非常基础的一个概念,这篇文章将从 CFRunLoop 的源码入手,介绍 RunLoop 的概念以及底层实现原理。之后会介绍一下在 iOS 中,苹果是如何利用 RunLoop 实现自动释放池、延迟回调、触摸事件、屏幕刷新等功能的。 RunLoop 的...
阅读全文
摘要:1.解析json数据NSDictionary *citiesDic = [CoreJSONSerialization coreJSONSerialization:@"cities"];NSDictionary *infor = [citiesDic objectForKey:@"infor"];NS...
阅读全文

浙公网安备 33010602011771号