![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
大自然的搬运工
ChinHan
这个作者很懒,什么都没留下…
展开
-
Delegate
delegate&protocoldelegate(委托/代理)是iOS开发中常用的设计模式,表示将一个对象的部分功能转交给另一个对象。借助protocol可以很方便实现这中设计模式。应用场景:通知与监听: 详见 delegate,notifucation,KVO三种模式实现通信的优缺点苹果系统自带:UITabelView oc 一个类只能继承一个父类,但代理可以使一个类继承多个协议。转载 2015-12-02 16:31:45 · 617 阅读 · 0 评论 -
KVC-KVO(键盘编码-键值观察)
KVC-KVO(键盘编码-键值观察)KVC (key-value-coding)方法列表objc// 获取通过key- (id)valueForKey:(NSString *)key;// 设置值- (void)setValue:(id)value forKey:(NSString *)key;- (id)valueForKeyPath:(NSString *)keyPath;- (vo原创 2015-12-02 21:04:32 · 661 阅读 · 0 评论 -
iOS 页面间几种传值方式(属性,代理,block,单例,通知
iOS 页面间几种传值方式属性(KVC,KVO),代理(delegate),block,单例,通知(NSNotification)**应用场景:**第二个视图控制器如何获取第一个视图控制的信息eg:第二个界面中的lable显示第一个界面的textField中的文本这就需要用到属性(kvc,kvo)传值,Block传值页面间传值有八大传值方式,下面我们就简单介绍下页面间常用的五种传值方式:属性传转载 2015-12-03 09:27:52 · 932 阅读 · 0 评论 -
GCD使用三部曲之:基本用法
什么是GCD?GCD全称为Grand Central Dispatch,是libdispatch的市场名称,而libdispatch是Apple的一个库,其为并发代码在iOS和OS X的多核硬件上执行提供支持。确切地说GCD是一套低层级的C API,通过 GCD,开发者只需要向队列中添加一段代码块(block或C函数指针),而不需要直接和线程打交道。GCD在后端管理着一个线程池,它转载 2015-12-04 10:13:55 · 359 阅读 · 0 评论 -
知其然亦知其所以然-NSOperation并发编程
对于iOS的并发编程, 用的最普遍的就是GCD了, GCD结合Block可以so easy的实现多线程并发编程. 但如果你看一些诸如AFNetworking, SDWebImage的源码, 你会发现它们使用的都是NSOperation, 纳尼? 难道NSOperation这货更屌? YES, 它确实更屌! Okay, 那我们就先来简单PK下GCD和NSOperation(当然这里也包括NSOper转载 2015-12-04 10:16:10 · 542 阅读 · 0 评论 -
iOS开发总结之代码规范
最近被安排fix项目的随机crash问题, 大大小小修复了差不多10个issue, 总结一下发现这些问题或多或少都是由代码习惯和编程规范引起的, 可见一个好的编码习惯是多么的重要! 趁着这两天休假将自己所认为的一些比较好的代码规范整理一下, 并结合之前遇到的实际case跟大家分享一下.命名规范总的来说, iOS命名两大原则是:可读性高和防止命名冲突(通过加前缀来保证). Objec转载 2015-12-04 10:24:14 · 424 阅读 · 0 评论