ホームページ  >  記事  >  データベース  >  Cocos2dx3.2从零开始【三】继续Cocos2dx3.2的学习

Cocos2dx3.2从零开始【三】继续Cocos2dx3.2的学习

WBOY
WBOYオリジナル
2016-06-07 15:09:271064ブラウズ

继续Cocos2dx3.2的学习! 一、VS里开发Cocos2dx 3.2时代码折叠。 C不像C#那样直接#region可以折叠,很苦恼。 度娘谷歌,发现可以这样: #pragma region name #pragma endregion 欣喜万分! 二、获取本层所有精灵 auto sp = this-getChildren();//获取这个层

继续Cocos2dx3.2的学习!

一、VS里开发Cocos2dx 3.2时代码折叠。

        C++不像C#那样直接#region可以折叠,很苦恼。

        度娘谷歌,发现可以这样:

#pragma region name  

#pragma endregion
        欣喜万分!

二、获取本层所有精灵

auto sp = this->getChildren();//获取这个层中所有的孩子,也就是所有的精灵

比较完整的方法,获取本层所有精灵,并且使所有精灵向下移动:

voidSecond::myupdate(float f){//注意有一个float f 形参  
    auto sp = this->getChildren();//获取这个层中所有的孩子,也就是所有的精灵。  
    for (auto a: sp)  //这个类似于迭代器的遍历你可以改成for(auto a= sp.begin();a!=sp.end();a++){}
    {  
       a->setPosition(a->getPosition().x, a->getPosition().y - 2);  
    }  
}  

三、切换场景

    切换场景有两个切换方式,一种是replacescene,一种是pushscene

    这两种切换方式的区别在于,前者释放了当前场景,后者把当前场景压入栈中保存。pushscene的场景要切换回来,只需在子场景中调用popscene即可。 相当于原来的场景暂停了一会。

   这里有个问题,暂时记住:PopScene回来失效。

四、方法报错"没有找到重载的成员函数"时。

   1.检查是否在.h中声明。

   2.检查方法是否填写cocos2d::。

   3.上面2,如果.h中#include "cocos2d.h"后面有USING_NS_CC,可不添加cocos2d::。





声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。