我正在使用以下代码:
CCMenuItemFont *controllerItem = [CCMenuItemFont itemFromString:@"Analog" target:self selector:@selector(controllerToggle)];
CCMenu *controllerTypeMenu = [CCMenu menuWithItems:controllerItem, nil];
[controllerTypeMenu alignItemsVerticallyWithPadding:30.0f];
controllerTypeMenu.position = CGPointMake(160.0f, 240.0f);
[self addChild:controllerTypeMenu z:0 tag:ControllerMenu];
}
-(void) controllerToggle
{
CCMenuItemFont *controllerItem = [self getChildByTag:888];
NSString * text = [NSString stringWithFormat: @"switching.. %f", CCRANDOM_0_1()];
[controllerItem setString:text];
}
在 controllerToggle 我想访问 controllerItem 并将 String 更改为另一个值。这可能吗?我检查并 CCMenu 添加了基于数组顺序的 CCMenuItems 作为子项。但这不是一个优雅的解决方案。出于同样的原因,我无法将 CCMenuItem 添加到场景中,因为它会给我“孩子已添加错误”。所以我觉得我应该写自己的“开关”按钮,但我想知道那里是否已经有东西了..
有什么帮助吗??谢谢!