2012-03-28 7 views

Antwort

4

hinzufügen UISwitch in Ihrer Header-Datei von was auch immer Schicht Ihrer Verwendung

opionsLayer.h

UISwitch *muteSwitch; 

dann implementieren sie in Ihrer init-Methode in der .m Ihrer Schicht

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]; 

dann die Callback-Funktion in der .m, aber nicht in der Init-Methode,

- (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]; 
    } 

} 

vorausgesetzt, Sie verwenden einfache Audio-Engine hier aber .. so müssten Sie SimpleAudioEngine in der Kopfzeile zu importieren.

+0

Es funktioniert mit Apple Standard UISwitch-Steuerelement, aber ich versuche, [eine benutzerdefinierte UISwitch] (http://www.catamount.com/blog/1063/uicustomswitch-customizing-uiswitch-color-it-change-labels) zu verwenden /). Übrigens ist der einzige Gedanke, der benötigt wird, das Steuerelement zu drehen. Vielen Dank! –