首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >每个CCMenuItem的cocos2d

每个CCMenuItem的cocos2d
EN

Stack Overflow用户
提问于 2013-04-15 01:57:25
回答 1查看 673关注 0票数 1

我正在设置一个CCMenu,其中的菜单项如下:

代码语言:javascript
复制
    CCLabelTTF *label1 = [CCLabelTTF labelWithString:@"level 1" fontName:@"Marker Felt" fontSize:32];
    CCLabelTTF *label2 = [CCLabelTTF labelWithString:@"level 2" fontName:@"Marker Felt" fontSize:32];
    CCLabelTTF *label3 = [CCLabelTTF labelWithString:@"level 3" fontName:@"Marker Felt" fontSize:32];
    CCLabelTTF *label4 = [CCLabelTTF labelWithString:@"level 4" fontName:@"Marker Felt" fontSize:32];

    CCMenuItem *level1 = [CCMenuItemLabel itemWithLabel:label1 target:self selector:@selector(levelSelect:)];
    level1.tag = 1;
    CCMenuItem *level2 = [CCMenuItemLabel itemWithLabel:label2 target:self selector:@selector(levelSelect:)];
    level2.tag = 2;
    CCMenuItem *level3 = [CCMenuItemLabel itemWithLabel:label3 target:self selector:@selector(levelSelect:)];
    level3.tag = 3;
    CCMenuItem *level4 = [CCMenuItemLabel itemWithLabel:label4 target:self selector:@selector(levelSelect:)];
    level4.tag = 4;
    CCMenu *menu = [CCMenu menuWithItems:level1, level2, level3, level4, nil];
    [menu alignItemsVerticallyWithPadding:20];

有没有一种方法可以缝合一个for循环来遍历每个CCMenuItem?如果它的标签小于其他值,我想基本上将enabled设置为no。例如:

代码语言:javascript
复制
for (ALL MENU ITEMS) {
    if (THAT MENU ITEM.tag < 4) {
        THAT MENU ITEM.enabled = NO;
    }
}

提前感谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-15 02:00:24

CCMenuItems被添加为您的CCMenu的子级,所以为了遍历它们,您可以这样做。

代码语言:javascript
复制
for (CCMenuItem *item in [menu children]) {
    if (item.tag < 4) {
        item.enabled = NO;
    }
}
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16002393

复制
相关文章

相似问题

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