我正在设置一个CCMenu,其中的菜单项如下:
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。例如:
for (ALL MENU ITEMS) {
if (THAT MENU ITEM.tag < 4) {
THAT MENU ITEM.enabled = NO;
}
}提前感谢
发布于 2013-04-15 02:00:24
CCMenuItems被添加为您的CCMenu的子级,所以为了遍历它们,您可以这样做。
for (CCMenuItem *item in [menu children]) {
if (item.tag < 4) {
item.enabled = NO;
}
}https://stackoverflow.com/questions/16002393
复制相似问题