OC
SuperHunters
这个作者很懒,什么都没留下…
展开
-
Runtime的几个小例子
一、什么是runtime(也就是所谓的“运行时”,因为是在运行时实现的。) 1.runtime是一套底层的c语言API(包括很多强大实用的c语言类型,c语言函数); [runtime运行系统] 2.实际上,平时我们编写的oc代码,底层都是基于runtime实现的; [OC语言的动态性]转载 2016-11-07 07:35:36 · 294 阅读 · 0 评论 -
关于block引用外部变量
/** block内部默认不允许修改外部变量的值 */- (void)blockDemo3 { __blockint i = 10; NSLog(@"%p", &i); void (^block)() = ^ { // 0x7f95e9683e30 堆区地址 NSLog(@"hello %d %原创 2016-11-07 08:52:32 · 346 阅读 · 0 评论 -
xml解析---DOM
XML的解析方式有2种(1)DOM:一次性将整个XML文档加载进内存,比较适合解析小文件(3)SAX:从根元素开始,按顺序一个元素一个元素往下解析,比较适合解析大文件 XML解析方式的选择建议:大文件:NSXMLParser(系统的解析sax)、libxml2小文件:GDataXML (dom解析)GDataXMLNode 框架解析原创 2016-11-08 22:40:35 · 175 阅读 · 0 评论 -
图片加载方式
内存分配imageName:加载图片1相同的图片被加载到内存当中,只会加载一次.2当对象销毁的时候,图片不会一起销毁3系统管理,不受我们控制4加载到内存当中的图片,占据的内存空间较大imageWithContentOfFile:加载图片1加载出来的图片,如果不再使用就会立马被销毁2图片会被重复添加到内存当中3加载到内存当中的图片,占据的内存空间非常小原创 2016-11-08 23:36:33 · 211 阅读 · 0 评论 -
NSMutableDictionary中setValue和setObject
两者的定义setObject:注意:setObject:forKey:中Key的是遵守了NSCopying的对象类型,并不是NSString,只不过我们经常使用NSString而已。setValue:对象可以是null或者nill 但是 key只能是NSString类型发送setObject:forKey 给接收者,也就是调用setObject:fo原创 2016-11-10 11:15:42 · 409 阅读 · 0 评论 -
字典模型中有id怎么解决
IOS 字典转模型中出现id怎么办:很多情况下从服务器获取的JSON数据中会有id字段,而在oc中id属于关键字,如果这个时候使用setValuesForKeysWithDictionary,程序必然会core掉。但是json返回的字段很多,一个一个写setvalue很麻烦。因此可以有一个简单的方法重写:- (void)setValue:(id)value forUndefinedKey:转载 2016-11-11 11:08:03 · 428 阅读 · 0 评论 -
Xcode8打印很多日志的解决方法
在Xcode Product 中选择 Scheme 中的 Edit Scheme 或者 command + shift + 在Environment Variables 中添加OS_ACTIVITY_MODE = disable 即可原创 2016-11-30 19:43:09 · 1751 阅读 · 0 评论 -
NSString属性copy 和strong
定义一个类,并为其声明两个字符串属性用一个不可变字符串来为这两个属性赋值输出结果是: 不管是strong还是copy属性的对象,其指向的地址都是同一个,即为string指向的地址。如果我们换作MRC环境,打印string的引用计数的话,会看到其引用计数值是3,即strong操作和copy操作都使原字符串对象的引用计数值加了1。把strin原创 2016-11-19 00:17:45 · 401 阅读 · 0 评论 -
用NSCache存取一张图片
这只是很简单的存取代理方法不要忘了添加,设置数量限制这个看需求程序运行起来先存一张图片点击屏幕取出存在内存中的图片点击屏幕后图片就显示出来了这就是简单的存取图片原创 2016-11-23 10:22:32 · 298 阅读 · 0 评论