来自:http://www.cnblogs.com/TopWin/archive/2012/09/12/2682042.html

近期看cocos2d-x 2.0.2公布后升级了一下。升级后发现又出现了非常多错误,原来有一些地方的代码使用方法改变了。在改动代码的过程中。简单做了一些记录,当做是一个备忘录。

1、CCScene和CCLayer的初始化统一用create()函数进行创建。

//升级前代码
CCScene *scene=NULL;
do
{
scene=CCScene::node();
CC_BREAK_IF(!scene);
GameScene *layer=GameScene:: node();
CC_BREAK_IF(!layer);
scene->addChild(layer);
}while(0);
//升级后代码
CCScene *scene=NULL;
do
{
scene=CCScene::create();
CC_BREAK_IF(!scene);
GameScene *layer=GameScene:: create();
CC_BREAK_IF(!layer);
scene->addChild(layer);
}while(0);

2、取消了CCMutableArray,借用CCArray来取代

//升级前代码
//定义
CCMutableArray<cocos2d::CCSprite *> *GameScene::snakeSprites=NULL; //初始化
snakeSprites=new CCMutableArray<CCSprite *>(len); //遍历
for(int i=1;i<len;i++)
{
part=world->snake->parts->getObjectAtIndex(i);
}
//升级后代码
//定义
CCArray* GameScene::snakeSprites = NULL; //初始化
snakeSprites = new CCArray(len); //遍历
for(int i=1;i<len;i++)
{
part=(SnakePart*)world->snake->parts->objectAtIndex(i);
}

另外。CCArray能够通过CCARRAY_FOREACH来进行遍历。

CCArray* array1 = new CCArray();

CCObject* arrayItem;
CCARRAY_FOREACH(array1, arrayItem){
CCSprite* pItem = (CCSprite*)(arrayItem);
}

3、cocos2d::ccTime统一用float进行取代。

//升级前代码
void updateReady(cocos2d::ccTime dt);
//升级后代码
void updateReady(float dt);

4、CCTouchDispatcher::sharedDispatcher()和CCDirector::sharedDirector()合并

//升级前代码
CCTouchDispatcher::sharedDispatcher()->addTargetedDelegate(this,kCCMenuTouchPriority,true);
//升级后代码
CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this, kCCMenuHandlerPriority, true);

5、一些get、set函数发生改变,比方setIsVisible变成setVisible,setIsTouchEnabled变成等setTouchEnabled等等。

//升级前代码
snakeSprite->setIsVisible(isVisible); this->setIsTouchEnabled(true);
//升级后代码
snakeSprite->setVisible(isVisible); this->setTouchEnabled(true);

其他的改变在使用过程中假设再遇到再继续加入。

升级到cocos2d-x 2.0.2代码差异的更多相关文章

  1. 升级时出现:请先升级 UCenter 到 1.6.0 以上版本。

    有的站点UCenter升级完成后仍然提示请先升级 UCenter 到 1.6.0 以上版本的现象,下面分享下UCenter版本号不正确的原因和处理办法,可能有以下的几个文件和处理办法: 一.UCent ...

  2. phpMyAdmin - 错误 您应升级到 MySQL 5.5.0 或更高版本,解决办法。。。

    折腾自己的个人网站,装了个数据库管理工具,遇到您应升级到 MySQL 5.5.0 或更高版本... 采用降级phpmyadmin版本的方法解决了: 查找phpmyadmin/libraries/com ...

  3. iOS:xCode7版本运行xCode8.0的代码

    怎么在xCode7版本上运行xCode8.0的代码? 1.右键你的"LaunchScreen.sb"文件并用编辑器打开sb 2.删掉"<capability nam ...

  4. #if 0在代码中的作用

    #if 0在代码中有2个作用. 1.作为行内注释 /**/是多行注释,如果想在/**/里面嵌套一个多行注释,怎么办呢? /* int a=10; /* - (void)test{ NSLog(@&qu ...

  5. 高屋建瓴 cocos2d-x-3.0架构设计 Cocos2d (v.3.0) rendering pipeline roadmap(原文)

    Cocos2d (v.3.0) rendering pipeline roadmap Why (the vision) The way currently Cocos2d does rendering ...

  6. itest 开源测试管理项目中封装的下拉列表小组件:实现下拉列表使用者前后端0行代码

    导读: 主要从4个方面来阐述,1:背景:2:思路:3:代码实现:4:使用 一:封装背景       像easy ui 之类的纯前端组件,也有下拉列表组件,但是使用的时候,每个下拉列表,要配一个URL ...

  7. [2019BUAA软工助教]第0次代码作业

    [2019BUAA软工助教]第0次代码作业 前言 本博客为完成结对项目所需的先导知识,题目不难,请认真对待 :) 欢迎来到软件工程 :) 注:本次实验为附加作业,不做不扣分,做了有附加分 Part 0 ...

  8. [2019BUAA软工]第0次代码作业

    Visual Studio 单元测试的简单应用 写在前面   笔者根据作业的介绍以及Visual Studio 2017 文档的相关说明,进行了Visual Studio 单元测试的简单应用. Tip ...

  9. AS3.0纯代码编写的两款loading效果

    AS3.0纯代码编写的两款loading效果 效果一 效果二 代码很简单,实现的原理一样,只不过矩形用到了Matrix类,对注册点进行了调整,效果可用于视频播放器缓冲时的loading效果,下面看代码 ...

随机推荐

  1. Github干货系列:C++资源集合-

    Awesome CPP,这又是一个 Awesome XXX 系列的资源整理,由 fffaraz 发起和维护.内容包括:标准库.Web应用框架.人工智能.数据库.图片处理.机器学习.日志.代码分析等. ...

  2. 《转》Python多线程学习

    原地址:http://www.cnblogs.com/tqsummer/archive/2011/01/25/1944771.html 一.Python中的线程使用: Python中使用线程有两种方式 ...

  3. WM_SYSCOMMAND消息命令整理 good

    注意:1. 使用WM_SYSCOMMAND时,鼠标的一些消息可能会受到影响,比如不能响应MouseUp事件,可以在窗口中捕获WM_SYSCOMMAND消息,并判断消息的CommandType来判断消息 ...

  4. 摘要算法CRC8、CRC16、CRC32,MD2 、MD4、MD5,SHA1、SHA256、SHA384、SHA512,RIPEMD、PANAMA、TIGER、ADLER32

    1.CRC8.CRC16.CRC32 CRC(Cyclic Redundancy Check,循环冗余校验)算法出现时间较长,应用也十分广泛,尤其是通讯领域,现在应用最多的就是 CRC32 算法,它产 ...

  5. AWS(0) - Amazon Web Services

    Computer EC2 – Virtual Servers in the Cloud EC2 Container Service – Run and Manage Docker Containers ...

  6. 建立地方Jekyll周边环境

    近期使用github建立一个博客,只是要了解markdown语法,因为markdown后写的不是立即可见.所以,每一个成品都要经过在线调试,在线调试已经上线的文章,每次上线有反复git add, gi ...

  7. oschina 手机/移动开发

    手机/移动开发 Android UI 组件(167) React Native 相关(8) 网站客户端(16) NativeScript 插件(18) iPhone/iPad开发工具(16) WP7开 ...

  8. poj2096(概率dp)

    题目连接:http://poj.org/problem?id=2096 题意:一个程序有m个子系统,要找出n种bug,某人一天找n种bug中的一种,求出他找出n种bug并且每个子系统中都有bug的天数 ...

  9. 关于Opencv2.4.x中stitcher类的简单应用

    1.opencv2.4以上版本有stitcher类,可以简单方便的实现图像的拼接,目前只是简单的测试一下stitcher类的拼接功能,也是纠结了好长时间,最终发现是要在链接库中加上opencv_sti ...

  10. SQL参数化查询的问题

    最近碰到个问题, SQL语句中的 "... like '%@strKeyword%'"这样写查不出结果, 非的写成 "... like '%" + strKey ...