【cocos2dx中Node类getParent和getChildByTag()】学习体会
參考http://cn.cocos2d-x.org/doc/cocos2d-x-3.0/d3/d82/classcocos2d_1_1_node.html
当中和child、parent有关的成员函数例如以下:
|
Children and Parent
|
|
| virtual void | addChild (Node *child) |
| 加入一个子节点到容器内。z-order是0. 很多其它... | |
| virtual void | addChild (Node *child, int localZOrder) |
| 加入一个子节点到容器中,參数有一个局部Z轴顺序。 很多其它... | |
| virtual void | addChild (Node *child, int localZOrder, int tag) |
| 加入一个子节点到容器中,有Z轴顺序和一个标记。 | |
| virtual Node * | getChildByTag (int tag) |
| 从容器中得到一个子节点通过它的标记。 很多其它... | |
| virtual Vector< Node * > & |
getChildren () |
| 返回子节点数组。 很多其它... | |
| virtual const Vector< Node * > & |
getChildren () const |
| virtual ssize_t | getChildrenCount () const |
| 返回子节点的总数 很多其它... | |
| virtual void | setParent (Node *parent) |
| 设置父节点Sets the parent node 很多其它... | |
| virtual Node * | getParent () |
| 返回指向父节点的指针。 很多其它... | |
| virtual const Node * | getParent () const |
| virtual void | removeFromParent () |
| 从父节点中删除一个节点。有一个cleanup參数。
假设这个节点是一个孤节点,那么什么都不会发生。 很多其它... |
|
| virtual void | removeFromParentAndCleanup (bool cleanup) |
| 从父节点中删除一个节点 假设这个节点是一个孤节点。那么什么都不会发生。 | |
| virtual void | removeChild (Node *child, bool cleanup=true) |
| 从容器中删除一个孩子,取决于cleanup參数同一时候会清除全部的活动的动作。 很多其它... | |
| virtual void | removeChildByTag (int tag, bool cleanup=true) |
| 从一个容器中删除一个孩子通过标记值。取决于cleanup參数同一时候会清除全部的活动的动作。 很多其它... | |
| virtual void | removeAllChildren () |
| 从容器中删除全部的孩子,with a cleanup。 很多其它... | |
| virtual void | removeAllChildrenWithCleanup (bool cleanup) |
| 从容器中删除全部的孩子, 取决于cleanup參数同一时候会清除全部的活动的动作。 很多其它... | |
| virtual void | reorderChild (Node *child, int localZOrder) |
| 对一个孩子又一次排序,设定一个新的z轴的值。 很多其它... | |
| virtual void | sortAllChildren () |
| 在绘画之前,排列全部的孩子数组一次,而不是每次加入或者删除子节点时都排序。 这种方法能够大量地提高性能。 很多其它... | |
详细怎么用我也在学习中。可是比較实用的就是通过此。你能够调用节点(Node),一个游戏中的节点树随意一点Node对象都能够通过此方法获得,方便游戏开发。
举个样例
比方一个跑酷游戏scene有三个layer(动画,背景,分数)当中动画layer状态改变了。逻辑上要求还有一个分数layer做出对应改变。通过child和parent方法就能够非常高速定位到分数layer。
【cocos2dx中Node类getParent和getChildByTag()】学习体会的更多相关文章
- cocos2d-x中Node与Node层级架构
Cocos2d-x采用层级(树形)结构管理场景.层.精灵.菜单.文本.地图和粒子系统等节点(Node)对象.一个场景包含了多个层,一个层又包含多个精灵.菜单.文本.地图和粒子系统等对象.层级结构中的节 ...
- cocos2dx中node的pause函数(lua)
time:2015/05/14 描述 lua下使用node的pause函数想暂停layer上的所有动画,结果没有效果 1. pause函数 (1)cc.Node:pause 代码: void Node ...
- cocos2d-x 中菜单类
菜单相关类包含:菜单类和菜单项类,菜单类图,从类图可见Menu类继承于Layer. 菜单项类图,从图中可见所有的菜单项都是从BaseMenuItem继承而来的,BaseMenuItem是抽象类,具体使 ...
- cocos2d-x中Node中重要的属性
Node还有两个非常重要的属性:position和anchorPoint. position(位置)属性是Node对象的实际位置.position属性往往还要配合使用anchorPoint属性,为了将 ...
- cocos2dx中的内存管理方式
转载:http://www.cocoachina.com/bbs/read.php?tid=195219 今天看了一下cocos2dx的内存管理机制,有些地方不太好理解搞了挺长的时间,现在感觉自己理解 ...
- COCOS2D-X学习笔记(一)-----Node类的学习
Node类(在3.0版本以下叫CCNode):节点类. 本文记录以下几个方法的学习笔记: init()和onEnter()这俩个方法都是CCNode的方法.其区别如下: 1.其被调用的顺序是先init ...
- 《Cocos2d-x游戏开发实战精解》学习笔记3--在Cocos2d-x中播放声音
<Cocos2d-x游戏开发实战精解>学习笔记1--在Cocos2d中显示图像 <Cocos2d-x游戏开发实战精解>学习笔记2--在Cocos2d-x中显示一行文字 之前的内 ...
- 《Cocos2d-x游戏开发实战精解》学习笔记2--在Cocos2d-x中显示一行文字
在Cocos2d-x中要显示文字就需要用到Label控件.在3.x版本的Cocos2d中,舍弃了之前版本所使用的LabelTTF.LabelAtlas.LabelBMFont 3个用于显示文字的类,而 ...
- Typescript 学习笔记四:回忆ES5 中的类
中文网:https://www.tslang.cn/ 官网:http://www.typescriptlang.org/ 目录: Typescript 学习笔记一:介绍.安装.编译 Typescrip ...
随机推荐
- 图的基本操作(基于邻接表):图的构造,深搜(DFS),广搜(BFS)
#include <iostream> #include <string> #include <queue> using namespace std; //表结点 ...
- Codeforces Round #375 (Div. 2) F. st-Spanning Tree 生成树
F. st-Spanning Tree 题目连接: http://codeforces.com/contest/723/problem/F Description You are given an u ...
- Codeforces Round #375 (Div. 2) E. One-Way Reform 欧拉路径
E. One-Way Reform 题目连接: http://codeforces.com/contest/723/problem/E Description There are n cities a ...
- AT91 USB Composite Driver Implementation
AT91 USB Composite Driver Implementation 1. Introduction The USB Composite Device is a general way t ...
- Revit API风管对齐
start [Transaction(TransactionMode.Manual)] [Regeneration(RegenerationOption.Manual)] ].Origin, list ...
- 一个完整的DLL远程注入函数
函数名称: CreateRemoteDll() 返加类型:BOOL 接受参数: DLL路径,注入进程ID 其完整代码如下: BOOL CreateRemoteDll(const char *DllFu ...
- Windows XP Manifest in Delphi
Find out how you can include the manifest into a Delphi project to allow your application to share t ...
- frame与bounds的区别比较
翻译文档上的 bounds是指这个view在它自己坐标系的坐标和大小 而frame指的是这个view在它superview的坐标系的坐标和大小 区别主要在坐标系这一块. 很明显一个是自己为原点的坐标 ...
- sk_buff的数据预留和对齐
转自:http://blog.csdn.net/keepmovingnow/article/details/45850387 数据预留和对齐主要由skb_reserve().skb_put().skb ...
- SpringBoot扫描包提示找不到mapper的问题
SpringBoot扫描包问题 报错信息:Consider defining a bean of type in your configuration 方法一: 使用注解 @ComponentScan ...