2012-12-28 45 views
-1

我对CCMenu有一个操作,该操作是CCLayer的子操作 - 他是scroller的孩子。 (cocos2d的滚动层类)无法在cocos2d中停止操作

有一个动作在此CCMenu上运行,它有一个名称和一个标记。

我只是不能阻止它。当我试图去它,我看到空值。 我试过了:

[[[CCDirector sharedDirector].runningScene getChildByTag:600] stopAction:repeat]; 
[[[[CCDirector sharedDirector].runningScene getChildByTag:600]getChildByTag:800 ]stopAction:repeat]; 
[[[CCDirector sharedDirector].runningScene getChildByTag:600] stopAllActions]; 

[self stopAllActions]; 

什么都没有。 无法停止该操作。 如何停止我的CCScene中的所有操作?

+0

您只查看当前正在运行的场景的子项,这将是其中一个图层(滚动条?)。我认为您需要深入到节点层次结构中才能进入CCMenu。据我所知,“getChildByTag:”只能传给直接的孩子,而不是孩子的孩子。 – Sylvan

回答

0

您可能会尝试如下操作:

// 1。将标签分配到你的动作如:

id action = [CCRotateBy actionWithDuration:10.0f angle:90.0f]; 
[action setTag:1001]; 

运行动作:

[menu runAction:action]; 

,当你想停止它在的地方ccmenu的调用

[menu stopActionByTag: 1001]; 
-1

使用的菜单名称

ccmenu-> stopAllAction();