观察者模式

观察者模式工具类——CCNotificationCenter.

函数:

1.addObserver(订阅消息)

addObserver(CCObject* target,  //要订阅消息的主体

SEL_CallFuncO selector,         //消息回调函数

const char* name,                      //消息名称

CCObject* obj                            //要传递的数据

)

通过订阅消息,我们才能收到感兴趣的消息,消息通过回调函数来接收,消息名称代表消息的类型,用于筛选消息。最后要注意的是,最后一个参数代表消息要传递的数据,也就是说,在订阅消息时,我们可以传递数据,在接收到消息时,这个数据也同时传递回来。

2.removeObserver(取消订阅消息)

removeObserver(CCObject* target,         //取消订阅消息的主体

 const char* name                                       //消息名称

)

如果不想继续接收某个类型的消息,则需要取消订阅消息,通常在释放场景或者某个对象之前,对要取消该场景或对象订阅的消息,否则,当消息产生时,会因为对象不存在而产生一些意外的Bug。

3 postNotification(发布消息)

postNotification(const char* name) //参数:消息名称

消息订阅了,那什么时候能收到消息呢?这就需要在特定的条件下发布特定的消息,postNotification就是用于发布消息的,当然了,发布消息时必须指定消息类型,也就是消息名称。

4.postNotification(发布消息)

postNotification(const char* name,  //消息名称 

CCObject* object)                                //传递的数据

传递具体的数据,某某长高了,具体长了多少必须告诉订阅者。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值