首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Cocos2d中处理CCMenuItem

如何在Cocos2d中处理CCMenuItem
EN

Stack Overflow用户
提问于 2013-01-03 05:59:39
回答 1查看 1.1K关注 0票数 1

我是Cocos2d的新手,尝试过从普通的Cocoa Touch到Cocos2d的移植游戏。

我通过自定义方法创建了一些按钮:

代码语言:javascript
复制
+ (CCMenuItem *)createMenuItemImageWithNormalImage:(NSString *)normalImage selectedImage:(NSString *)selectedImage tag:(int)tag target:(id)target selector:(SEL)selector position:(CGPoint)position {

    CCMenuItem *item = [CCMenuItemImage itemWithNormalImage:normalImage selectedImage:selectedImage];
    item.tag = tag;
    [item setTarget:target selector:selector];
    item.position = [TSCCTransform transformPositionFromCocoaTouchToCocos2d:CGPointMake(position.x, position.y)];

    return item;
}

按钮:

代码语言:javascript
复制
    [self addChild:[TSCCLayer createMenuItemImageWithNormalImage:@"btn-mouse-dec.png" selectedImage:@"btn-mouse-dec.png" tag:0 target:self selector:@selector(changeNumberOfPlayers:) position:ccp([TSCCTransform winSizeWidth] - 140, 146)]];

但是当我点击它的时候什么也没有发生。问题出在哪里?怎样做才能正确呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-01-03 06:26:09

您不必向其中添加菜单项,而是菜单。

将该CCMenuItem添加到CCMenu中,然后将该菜单添加为该层的子级:

代码语言:javascript
复制
CCMenuItem* item=[TSCCLayer createMenuItemImageWithNormalImage:@"btn-mouse-dec.png" selectedImage:@"btn-mouse-dec.png" tag:0 target:self selector:@selector(changeNumberOfPlayers:) position:ccp([TSCCTransform winSizeWidth] - 140, 146)]
CCMenu* menu= [CCMenu menuWithItems: item, nil];  // item becomes child of menu
[self addChild: menu];
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14129892

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档