首页 > 其他 > 详细

关于Cocos2d-x中节点的获取

时间:2016-08-21 18:19:14      阅读:367      评论:0      收藏:0      [点我收藏+]

方法一:

1.在.h文件的属性里面先声明要使用的节点或者变量。

private:

  Label *scorelabel;

2.在.cpp文件中创建并使用这个节点或者变量。

scorelabel = Label::createWithSystemFont("Score: 0", "Arial", 36);
scorelabel->setAnchorPoint(Vec2(1, 0));
scorelabel->setPosition(Vec2(size.width, size.height - scorelabel->getContentSize().height)); //位于右上角
addChild(scorelabel, 10);

 

 

方法二:

1.在.cpp文件里面用auto声明变量,创建并使用这个节点或者变量。

auto scorelabel = Label::createWithSystemFont("Score: 0", "Arial", 36);
scorelabel->setAnchorPoint(Vec2(1, 0));
scorelabel->setPosition(Vec2(size.width, size.height - scorelabel->getContentSize().height)); //位于右上角

 

2.在添加到父节点的时候与方法一不同的是,添加的时候是有标记Tag的。这里的SCORE_LABEL是.h文件里面配置有游戏信息

addChild(scorelabel, 10, SCORE_LABEL);

.h文件

public:
enum NodeTag
{
  HERO_TAG = 100,
  ENEMY_TAG = 101,
  HERO_BULLET_TAG = 102,
  SCORE_LABEL = 103,
  PAUSE_MENU = 104
};

 

3.用getChildByTag方法来通过节点的Tag来获得节点,从而对节点进行操作(有点像安卓中获得view的方法)

auto scorelabel = (Label*)this->getChildByTag(SCORE_LABEL);

scorelabel->setString(buf);

关于Cocos2d-x中节点的获取

原文:http://www.cnblogs.com/HangZhe/p/5792994.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!