注意:
如果多個(gè)節(jié)點(diǎn)擁有相同的標(biāo)記值,getChildByTag方法將返回最先匹配該標(biāo)記值的節(jié)點(diǎn),其她擁有該標(biāo)記值的節(jié)點(diǎn)就不可能再被訪問到了。所以,確保每個(gè)節(jié)點(diǎn)的標(biāo)記值都是唯一的。
而且,動(dòng)作也是可以有標(biāo)記值的。節(jié)點(diǎn)和動(dòng)作的標(biāo)記值互相不會(huì)產(chǎn)生影響,所以,某個(gè)節(jié)點(diǎn)與某個(gè)動(dòng)作的標(biāo)記值相同不會(huì)產(chǎn)生任何問題。
3.5.2 動(dòng)作的處理方式
節(jié)點(diǎn)也可以運(yùn)行動(dòng)作。稍后我會(huì)向大家介紹動(dòng)作的概念?,F(xiàn)在,你只要知道動(dòng)作是指在特定時(shí)間內(nèi)完成移動(dòng)、旋轉(zhuǎn)、縮放以及其他操作的一些行為。
動(dòng)作的聲明:
CCAction* action = [CCBlink actionWithDuration:10 blinks:20];
action.tag = 234;
通過運(yùn)行上面聲明的動(dòng)作可以令節(jié)點(diǎn)閃爍:
[myNode runAction:action];
如果之后想獲取該動(dòng)作,可以通過它的標(biāo)記來獲得:
CCAction* retrievedAction = [myNode getActionByTag:234];
可以通過標(biāo)記來停止指定的動(dòng)作:
[myNode stopActionByTag:234];
也可以通過指針來停止指定的動(dòng)作:
[myNode stopAction:action];
還可以同時(shí)停止某節(jié)點(diǎn)上運(yùn)行的所有動(dòng)作:
[myNode stopAllActions];