iOS5.0以后就开始可以使用ARC( Automatic Reference Counting:自动引用计数)来代替之前的MRC(Manual Reference Counting:人工引用计数)。使用ARC会减少很多代码和忘了释放对象的苦恼。但是事情都有两面性。使用了ARC之后如果你想复用以前写 ...
分类:
其他好文 时间:
2016-04-18 00:44:46
阅读次数:
129
一、通讯录iOS中的通讯录是存储在数据库中的,由于iOS的权限设计,开发人员是不允许直接访问通讯录数据库的,实现通讯录操作需要使用到AddressBook.framework框架。AddressBook.framework框架:
可以从底层去操作通讯录的所有信息,做到精确控制
是基于C语言编写的,无法使用ARC管理内存,需要开发者手动管理内存
需要自构UI界面
iOS还提供了另外一个框架来供开发者操...
分类:
移动开发 时间:
2016-04-16 10:58:57
阅读次数:
356
iOS5.0以后就开始可以使用ARC( Automatic Reference Counting:自动引用计数)来代替之前的MRC(Manual Reference Counting:人工引用计数)。使用ARC会减少很多代码和忘了释放对象的苦恼。但是事情都有两面性。使用了ARC之后如果你想复用以前写 ...
分类:
其他好文 时间:
2016-03-26 15:33:40
阅读次数:
108
一般在block中修改变量都需要事先加block进行修饰。在非arc中,block修饰的变量的引用计算是不变的。在arc中,会引用到,并且计算+1;非arc下可使用(arc直接使用__weak即可) //非ARC __block typeof(self) weakSelf = self; self.
分类:
其他好文 时间:
2016-03-06 01:00:22
阅读次数:
126
OC的内存管理 iOS7以前使用的是MRC手动内存管理,现在都使用ARC自动内存管理,一般不会出现内存泄漏问题。 封装 封装就是有选择的保护自己的代码。将给别人使用的接口留出来让人看见,其他的都隐藏起来。增加了代码的可读性、可维护性、可拓展性。 将给别人看的代码放在 interface当中(.h o
分类:
其他好文 时间:
2016-02-15 11:57:00
阅读次数:
150
1.在MRC工程中使用ARC的文件(例如AFNetworking,SDWebImage,MJRefresh等)在Build Phases里找到对应.m 在后面添加-fobjc-arc(代表这个文件使用ARC进行编译)2.在ARC工程中使用MRC文件,找到对应的文件在Build Phases中 找到对...
分类:
移动开发 时间:
2016-01-26 00:19:54
阅读次数:
463
iOS5.0以后就开始可以使用ARC来代替之前的MRC。1.ARC中使用MRC的类。方法如下:在targets的build phases选项下Compile Sources下选择要不使用arc编译的文件,双击它,输入-fno-objc-arc即可2.MRC中使用ARC的类。方法如下:在targets...
分类:
其他好文 时间:
2016-01-23 21:04:30
阅读次数:
120
1.nonatomic 2.assign3.strong4.weak 5.instancetype使部分类在编译时不使用ARC-(可以让这们支持 retain release retainCount)项目文件 - Build Phases - 找到.m文件双击 -加入Flags --->> -fn....
分类:
其他好文 时间:
2015-12-27 14:44:43
阅读次数:
155
1. Block的声明和线程安全Block属性的声明,首先需要用copy修饰符,因为只有copy后的Block才会在堆中,栈中的Block的生命周期是和栈绑定的,可以参考之前的文章(iOS: 非ARC下返回Block)。另一个需要注意的问题是关于线程安全,在声明Block属性时需要确认“在调用Blo...
分类:
移动开发 时间:
2015-12-24 11:57:38
阅读次数:
147
@propert的相关参数因为现在Xcode都是默认使用ARC所以现在分析主要是以ARC为主。1.@property有哪些参数?第一组:内存管理特性retain assign copy strong weak unsafe_unretained autoreleasing第二组:读 /写特...
分类:
移动开发 时间:
2015-12-07 08:32:48
阅读次数:
146