Добавьте UISwitch в заголовочный файл любого используемого вами слоя,
opionsLayer.h
UISwitch *muteSwitch;
, затем внедрите его в свой метод init в .m вашего слоя
muteSwitch = [[ UISwitch alloc ] initWithFrame: CGRectMake(100, 50, 0, 0) ];
muteSwitch.on = YES;
[muteSwitch addTarget:self action:@selector(soundOnOrOff:) forControlEvents:UIControlEventValueChanged];
[[[CCDirector sharedDirector] openGLView] addSubview:muteSwitch];
[muteSwitch release];
затем добавьте функцию обратного вызова в .m, но не в методе init,
- (void)soundOnOrOff:(id)sender
{
if ([[SimpleAudioEngine sharedEngine] mute]) {
// This will unmute the sound
[[SimpleAudioEngine sharedEngine] setMute:0];
}
else {
//This will mute the sound
[[SimpleAudioEngine sharedEngine] setMute:1];
}
}
при условии, что вы используете здесь простой аудио-движок, поэтому вам придется импортировать SimpleAudioEngine
в шапке тоже.