苹果其实在语言层面为我们做了很多事,比如Category实现装饰模式的意图,target-action实现命令模式意图等等,对于观察者模式,苹果也提供了KVO和通知中心,给开发者提供了极大的遍历。观察着模式即一个对象发出广播,然后某些对象可以在得知这个广播之后做相应的反应。KVO用来监控某个变量,是...
分类:
其他好文 时间:
2014-06-13 13:58:53
阅读次数:
660
KVO是实现Cocoa
Bindings的基础,它提供了一种方法,当某个属性改变时,相应的objects会被通知到。在其他语言中,这种观察者模式通常需要单独实现,而在Objective-C中,通常无须增加额外代码即可使用。
概述 这是怎么实现的呢?其实这都是通过Objective-C的运行时...
分类:
其他好文 时间:
2014-06-09 20:54:40
阅读次数:
259
首先,keyPath一定是frame,而不是frame.origin.x之类的路径,因为再点下去的话,就是访问结构体内部的值了,KVO是无法检测的,会报错找不到KeyPath。代码如下:1
[_funcMenuVC.view addObserver:self forKeyPath:@"fra...
分类:
其他好文 时间:
2014-06-02 20:07:13
阅读次数:
218
iPhone程序开发 KVO/KVC实现机理分析iPhone
程序开发KVO/KVC实现机理分析是本文要介绍的内容,不多说,直接进入话题。我们来看详细内容。Objective-C里面的Key-Value Observing
(KVO)机制,非常不错,可以很好的减少浇水代码。关于KVO的学习,可以参考...
分类:
移动开发 时间:
2014-06-02 17:35:30
阅读次数:
268
注册的时候参数过多
释放的时候必须取消注册
只有一个回调,当注册的观察者过多的时候,会使得代码变得杂乱...
分类:
移动开发 时间:
2014-06-01 14:45:18
阅读次数:
369
在开发的时候,是不是忽然有种错觉:我们好像是代码的搬运工,一个项目开始,把自己写好的、封装好的类、框架亦或别人写好的第三方框架不假思索的运用到项目中,一方面:项目时间紧;二方面:简单好用,减少了代码量。但是有时候,我们是否应该停下脚步,
从底层去看看代码的世界,那样我们收益会颇丰,让我们一起走在学习...
分类:
其他好文 时间:
2014-05-30 06:58:28
阅读次数:
180
LocationCoder地图经纬度解析其实,在地图里面将地图解析成有意义的地址,或者把地址转换成有意义的经纬度都是很容易的事情,只是我将其封装了支持KVO,通知中心,block取结果,代理取结果而已.能通过组合的方式来封装对象扩展功能就绝对不会用继承的方式来扩展功能,只有当组合解决不了问题时才会使...
分类:
其他好文 时间:
2014-05-26 18:40:33
阅读次数:
367
一、KVC简单介绍KVCkey valued coding 键值编码KVC通过键值间接编码
补充:与KVC相对的时KVO,即key valued observer
键值观察。监听某一个模型的属性,只要模型属性的值一变化就通知你。二、使用KVC1.KVC基本使用介绍(1)代码示例:新建一个命令行项目....
分类:
移动开发 时间:
2014-05-25 20:34:56
阅读次数:
344
技术笔记这两个机制的目的都是为了 **解耦合**
,它们时联系和相互独立的。这样说似乎有些说不通。我们具体看一看***它们是 **(联系)** 还是 **(独立)**
取决于我们要达到的目的:###目的一:场景介绍:紧密联系***我们的银行账户有变动的时候,银行会给我们发短信通知,这时候就是我们账户...
分类:
其他好文 时间:
2014-05-20 13:41:01
阅读次数:
200
@interface FoodData : NSObject{ NSString *
foodName; float foodPrice;
}@end/////////////////////////////////////////////////////////////////////////.....
分类:
其他好文 时间:
2014-05-20 11:02:32
阅读次数:
229