文档章节

观察者

Sniper_Tei
 Sniper_Tei
发布于 2015/04/09 14:54
字数 164
阅读 8
收藏 0

// KVC key - value - coding

// KVO key - value - observer

// 要把model设置成类的属性,否则添加监听之后调用不到监听的方法

self.student = [[Student alloc] init];

// 给属性student添加了一个监听者

// 第一个参数:添加观察者的对象,一般都是当前的类(自己监听自己的一个属性)

// 第二个参数:指定监听的内容

// 第三个参数:监听的方式(旧值和新值)

// 第四个参数:

[self.student addObserver:self forKeyPath:@"name" options:NSKeyValueObservingOptionOld | NSKeyValueObservingOptionNew context:@"我是用来监听的文本"];

self.student.name = @"Hello";

[_student release];


- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {

    NSLog(@"%@", change);

    NSLog(@"%@", context);

    NSLog(@"%@", keyPath);

}


© 著作权归作者所有

上一篇: 关于copy
Sniper_Tei
粉丝 0
博文 5
码字总数 1404
作品 0
大连
私信 提问
Android设计模式之观察者模式

观察者模式 1.观察者模式也被成为发布/订阅模式; 2.一种一对多的依赖关系,多个观察者对象同时监听某一个主题对象,这个主题对象状态发生变化的时候,会通知所有的观察者对象,使得观察者对象可以...

正阳Android
2017/12/01
0
0
iOS 观察者模式~优缺点、使用场景

//联系人:石虎QQ:1224614774昵称:嗡嘛呢叭咪哄 一、观察者模式优点: 1.观察者模式在被观察者和观察者之间建立一个抽象的耦合。被观察者角色所知道的只是一个具体观察者列表,每一个具体观察...

石虎132
2017/12/08
0
0
Java设计模式之-观察者模式(Observer)

Java设计模式之-观察者模式(Observer) 如果你发现一件心仪的商品,但是由于双十一已经剁手了,只能等到打折再去买。为了及时获得该商品的打折信息,你有两种方式: “拉”:每过一会儿就到...

Mock2052
2017/11/24
0
0
观察者模式

1 场景问题 1.1 订阅报纸的过程 来考虑实际生活中订阅报纸的过程,这里简单总结了一下,订阅报纸的基本流程如下: 首先按照自己的需要选择合适的报纸,具体的报刊杂志目录可以从邮局获取。 ...

ciyo_yang
2017/07/24
0
0
我的Java设计模式-观察者模式

相信大家都有看过《喜洋洋与灰太狼》,说的是灰太狼和羊族的“斗争”,而每次的结果都是灰太狼一飞冲天,伴随着一句“我还会回来的......”。为灰太狼感到悲哀,抓不到羊,在家也被老婆平底锅...

Jet啟思
2017/10/18
0
0

没有更多内容

加载失败,请刷新页面

加载更多

总结:TCP/IP协议

一、介绍 TCP协议属于OSI七层模型中的传输层协议,提供处于网络连接中的两台计算机之间的数据 传输。   在传输层有两个性质不同的协议:TCP(Transmission Control Protocol,传输控制协议...

浮躁的码农
3分钟前
0
0
一言不合就删库跑路?万名贡献者和阿里巴巴开源的二三事

9 月 27 日云栖大会,阿里巴巴宣布贾扬清担任开源技术委员会负责人。 有人问:开源是为了什么? 从个人视角看,可以证明自己的专业能力,获得行业认可; 从企业视角看,可以建立技术影响力,...

大涛学弟
14分钟前
1
0
JAVA编程注意事项(性能篇)

1. 尽量在合适的场合使用单例 使用单例可以缩短加载的时间,提高加载的效率,单例主要适用于以下三个方面: 第一,控制资源的使用,通过线程同步来控制资源的并发访问; 第二,控制实例的产生...

你好夜故事
15分钟前
1
0
List 前端 AngularJS JS 对IP排序

数据格式 $scope.dataList=[ {"ip":"192.168.10.10", "port":"8080",...}, { "ip":"192.168.10.12", "port":"8080",... } ,.....] 调用 $scope.ipSortForward($scope.dataList,"ip") 核心代码......

最菜最菜之小菜鸟
15分钟前
1
0
浅析Cassandra LeveledCompactionStrategy

前言 Cassandra是基于LSM架构的分布式数据库。LSM中有一个很重要的过程,就是压缩(Compaction)。默认的压缩策略是SizeTieredCompactionStrategy,今天主要说一下另一种压缩策略LeveledComp...

阿里云官方博客
20分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部