Cocos2d iphone cocos2d图像重叠问题

Cocos2d iphone cocos2d图像重叠问题,cocos2d-iphone,Cocos2d Iphone,Free4机器 成员 PM此用户 嗨 我想制作一个示例动画: 屏幕底部有一个按钮,按下此按钮时会出现一个小菜单。 小菜单的底部有一个图标,按下该图标后,小菜单将消失 按钮、小菜单、图标,都是CCMenuItemImage的实例 问题:按下图标时,小菜单不会消失。图标似乎对触摸事件没有响应 如有任何建议或帮助,将不胜感激 对不起,我的英语很差 代码如下: CCMenuItemImage *bg = [CCMenuItemImage itemFromNormalImage:@"b1.png" sel

Free4机器 成员 PM此用户

我想制作一个示例动画:

屏幕底部有一个按钮,按下此按钮时会出现一个小菜单。 小菜单的底部有一个图标,按下该图标后,小菜单将消失

按钮、小菜单、图标,都是CCMenuItemImage的实例

问题:按下图标时,小菜单不会消失。图标似乎对触摸事件没有响应

如有任何建议或帮助,将不胜感激

对不起,我的英语很差

代码如下:

CCMenuItemImage *bg = [CCMenuItemImage itemFromNormalImage:@"b1.png" selectedImage:@"b2.png" ];
CCMenuItemImage *button = [CCMenuItemImage itemFromNormalImage:@"button.png" selectedImage:@"button2.png" target:     self selector:@selector(showSideMenu:)];

CCMenuItemImage *sideMenu = [CCMenuItemImage itemFromNormalImage:@"s1.png" selectedImage:@"s2.png" ];
CCMenuItemImage *backbutton = [CCMenuItemImage itemFromNormalImage:@"backbutton.png" selectedImage:@"backbutton2.     png" target:self selector:@selector(hideSideMenu:)];

[ sideMenu addChild: backbutton ];

CCMenu *menu  =  [ CCMenu menuWithItems: bg,button, sideMenu, nil ];

[ self addChild: menu];
showSideMenu和hideSideMenu所做的是使用runAction使sideMenu出现和消失


谢谢。

根据代码,我看到的唯一问题是backButton没有作为菜单的子项添加。参数列表中只有bg、button和sideMenu。通过将其添加为bg的子级,它不会触发它自己的选择器,而是触发bg的选择器。因为bg没有任何定义,所以什么也没有发生。最简单的修复方法是将backbutton添加到列表中。您的代码如下所示:

CCMenuItemImage *bg = [CCMenuItemImage itemFromNormalImage:@"b1.png" selectedImage:@"b2.png" ];
CCMenuItemImage *button = [CCMenuItemImage itemFromNormalImage:@"button.png" selectedImage:@"button2.png" target:     self selector:@selector(showSideMenu:)];

CCMenuItemImage *sideMenu = [CCMenuItemImage itemFromNormalImage:@"s1.png" selectedImage:@"s2.png" ];
CCMenuItemImage *backbutton = [CCMenuItemImage itemFromNormalImage:@"backbutton.png" selectedImage:@"backbutton2.     png" target:self selector:@selector(hideSideMenu:)];

CCMenu *menu  =  [ CCMenu menuWithItems: bg,button, sideMenu, backbutton, nil ];

[ self addChild: menu];
如果希望每个按钮相对于菜单进行定位,只需设置其“位置”属性