博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
cocos2d-x CCCallFuncN中node CCCallFuncND中data
阅读量:6386 次
发布时间:2019-06-23

本文共 1313 字,大约阅读时间需要 4 分钟。

  CCCallFuncN:

1    CCCallFuncN *instant = new CCCallFuncN;  2    instant->initWithTarget(this, callfuncN_selector(ActionCallFunc::callback2));  3    m_grossini->runAction(instant);  4  5 void ActionCallFunc::callback2(CCNode* pSender)  6 {
7 CCSize s = CCDirector::sharedDirector()->getWinSize(); 8 label->setPosition(CCPointMake( s.width/4*2,s.height/2)); 9 pSender->setPosition( ccp(0, 0) ); 10 }

node即指代runAction的node节点;这样当触发callback2的时候即可通过pSender来改变m_grossini的一些状态。

  CCCalFuncND:

1    CCCallFuncND *instant2 = new CCCallFuncND;  2    instant2->initWithTarget(this, callfuncND_selector(ActionCallFunc::callback3), (void*)"fgd");  3  4 void ActionCallFunc::callback3(CCNode* pTarget, void* data)  5 {
6 CCSize s = CCDirector::sharedDirector()->getWinSize(); 7 CCLabelTTF *label = CCLabelTTF::labelWithString("fgd", "Marker Felt", 16); 8 label->setPosition(CCPointMake( s.width/4*3,s.height/2)); 9 addChild(label); 10 }

Data可以将数据指针传进去,不过类型丢了必须强转。

virtual bool initWithTarget (SelectorProtocol *pSelectorTarget, SEL_CallFuncND selector, void *d);现在对SelectorProtocol不太明白,为什么不是node,要是node的话我可以理解成父节点(psender的父节点),但是为啥是SelectorProtocol呢?

  SelectorProtocol:

  CCNode是SelectorProtocol的子类

转载于:https://www.cnblogs.com/wendao/archive/2011/12/09/egn_cocos2dx_CCCallFuncN.html

你可能感兴趣的文章
Linux服务器安全初始化自选安装Shell脚本
查看>>
PyCharm教程
查看>>
Python 简单的数据结构(一)
查看>>
谁说我们只会做工作流?做实验室管理系统我们也内行。
查看>>
yum安装开发库
查看>>
我的友情链接
查看>>
开源Python网络爬虫资料目录
查看>>
NSRunLoop Internals
查看>>
Hadoop2.4.1分布式安装
查看>>
PHP利用socket来实现POST数据
查看>>
Connection is read-only问题的产生原因与解决方法
查看>>
Proxmox VE 部署维护
查看>>
Linux软件包安装与卸载
查看>>
centos5.x安装sphinx
查看>>
3分钟搭建Ant Design Pro前端开发环境( MyClouds的前端选型)
查看>>
Scala各种用法
查看>>
Linux系统常用命令(二)
查看>>
简单的工厂模式学习
查看>>
温习如何画E-R图
查看>>
eclispe注释模板
查看>>