08 2016 档案

摘要:经典面试题:为什么 NSString 类型成员变量的修饰属性用 copy 而不是 strong (或 retain ) ? 在初学 iOS 的时候,可能会被灌输这么一个常识,切记 NSString 的 property 的修饰变量要写作 copy ,而不是 strong,那么这是为什么? 我们在声明 阅读全文
posted @ 2016-08-30 16:22 俊华的博客 阅读(373) 评论(0) 推荐(0)
摘要:问题: stackoverflow上有人提问这样的问题 http://stackoverflow.com/questions/16071503/how-to-tell-when-uitableview-has-completed-reloaddata 如果在调用reloadDate方法后需要立即获取 阅读全文
posted @ 2016-08-26 18:56 俊华的博客 阅读(8013) 评论(1) 推荐(0)
摘要:一、KVC 的用法和实践 用法 KVC(Key-value coding)键值编码,顾名思义。额,简单来说,是可以通过对象属性名称(Key)直接给属性值(value)编码(coding)“编码”可以理解为“赋值”。这样可以免去我们调用getter和setter方法,从而简化我们的代码,也可以用来修改 阅读全文
posted @ 2016-08-24 13:36 俊华的博客 阅读(2673) 评论(1) 推荐(1)
摘要:KVO的用法 KVO也就是key-value-observing(即键值观察),利用一个key来找到某个属性并监听其值得改变。用法如下: 添加观察者 在观察者中实现监听方法,observeValueForKeyPath: ofObject: change: context:(通过查阅文档可以知道,绝 阅读全文
posted @ 2016-08-24 11:48 俊华的博客 阅读(5118) 评论(0) 推荐(0)
摘要:当我们需要将一个对象进行归档时,都要让该对象的类遵守NSCoding协议,再实现归档和接档方法。例如有一个Person类,该类有两个成员变量 两个协议的实现方法如下 但当该类拥有上百个属性时,那将会花费更多的功夫在重复代码上,所以使用运行时机制截取类的成员变量,进行赋值 例如有一个狗类Dog和它的父 阅读全文
posted @ 2016-08-23 12:32 俊华的博客 阅读(1399) 评论(0) 推荐(1)
摘要:一、对象的关联方法有 1、 void objc_setAssociatedObject(id object, const void *key, id value,objc_AssociationPolicy policy) ,关联对象(将值value与对象object关联起来) 参数key:将来可以 阅读全文
posted @ 2016-08-23 12:26 俊华的博客 阅读(1722) 评论(0) 推荐(1)
摘要:动态的交换方法能够给项目中大量已经使用的方法 进行拦截增加操作 实践:利用运行时交换系统的ImageNamed:方法 应用背景 当系统需要适配ios7和ios8时可能会有显示不同图片的需求,但在老项目上开发ios7程序时并未考虑到ios8的适配,当项目上有几百处地方用到ImageNamed:方法时, 阅读全文
posted @ 2016-08-23 12:00 俊华的博客 阅读(2301) 评论(0) 推荐(1)
摘要:我们在使用苹果官方的文档的时候会发现可传不定数的参数例如: 这时你会发现 最后一个参数苹果会这样写 并且给你提示 ... 并以nil结尾 otherButtonTitles:<#(nullable NSString *), ...#>, nil 我们自己写的时候怎么做到这种效果的提示呢 ? 又怎么获 阅读全文
posted @ 2016-08-22 12:00 俊华的博客 阅读(6277) 评论(0) 推荐(1)
摘要:IMP IMP-指向实际执行函数体的函数指针 可以看到,这个函数体前两个参数是 id(消息接受者,也就是对象),以及SEL(方法的名字) method/objc_method method - 指向Objective C中的方法的指针 其中 _cmd SEL 类型的一个变量,Objective C的 阅读全文
posted @ 2016-08-11 12:06 俊华的博客 阅读(768) 评论(0) 推荐(1)
摘要:一、整体介绍 UIWebView自iOS2就有,WKWebView从iOS8才有,毫无疑问WKWebView将逐步取代笨重的UIWebView。通过简单的测试即可发现UIWebView占用过多内存,且内存峰值更是夸张。WKWebView网页加载速度也有提升,但是并不像内存那样提升那么多。下面列举一些 阅读全文
posted @ 2016-08-10 23:09 俊华的博客 阅读(58392) 评论(3) 推荐(7)
摘要:一、Storyboard中的UIScrollView使用自动布局 在使用storyboard和xib时,我们经常要用到ScrollView,还有自动布局AutoLayout,但是ScrollView和AutoLayout 结合使用,相对来说有点复杂。根据实践,我说一下我的理解,在故事板或xib中,S 阅读全文
posted @ 2016-08-08 17:54 俊华的博客 阅读(2354) 评论(0) 推荐(0)
摘要:iOS程序的启动执行顺序 AppDelegate 及 UIViewController 的生命周期 iOS应用程序的状态切换很重要,而UIViewControler对于iOS这种MVC模式来说尤为重要,基本都要继承自他。 一、iOS程序的启动执行顺序 1 程序的入口 进入main函数, 设置AppD 阅读全文
posted @ 2016-08-05 18:51 俊华的博客 阅读(16654) 评论(0) 推荐(2)