CCNotificationCenter的用法

首先添加几个对象


        NotificationCenterLayer* layer1 = NotificationCenterLayer::create(1);
	NotificationCenterLayer* layer2 = NotificationCenterLayer::create(2);
	NotificationCenterLayer* layer3 = NotificationCenterLayer::create(3);
	
	addChild(layer1);
	addChild(layer2);
	addChild(layer3);

在NoticationCenterLayer的初始化函数里注册消息


bool NotificationCenterLayer::init(int index)
{
	if(!CCLayer::init()){
		return false;
	}
	CCNotificationCenter::sharedNotificationCenter()->addObserver(this, callfuncO_selector(NotificationCenterLayer::showNotification), "notificationCenterTest", (CCObject*)index);
	return true;
}

void NotificationCenterLayer::showNotification(CCObject* sender)
{
	CCLOG("notification center call =========%d", (int)sender);
}

消息参数分别为类对象,回调函数,消息名称,消息参数


注册完毕之后执行post函数调用


CCNotificationCenter::sharedNotificationCenter()->postNotification("notificationCenterTest", NULL);

打印出来的消息是


notification center call =========1
notification center call =========2
notification center call =========3

如果在后面加上参数,例如

CCNotificationCenter::sharedNotificationCenter()->postNotification("notificationCenterTest", (CCObject*)2);

则只会打印

notification center call =========2

如果填入的参数没有被注册过的话,则不执行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值