iOS - 关闭SFX

时间:2014-09-15 09:56:07

标签: ios iphone uiswitch sfx

我是iOS开发的新手。我现在有一个带有一些SFX的应用程序。我发现了其他几个解释方法/逻辑的线程,我完全理解,但这是我之后的代码,因为我不知道语法。

如果我使用UI Switch,我该如何关闭应用程序中使用的任何SFX?

非常感谢任何帮助和帮助。

谢谢大家。

2 个答案:

答案 0 :(得分:0)

你是如何使用你的sfx的?如果你可以上传你的代码,那将有所帮助。但你可以尝试一下吗?

- (IBAction)SwitchValueChanged:(id)sender
{

    if([sender isOn])
{
        NSLog(@"Switch is ON");
        //On Your SFX
    } 
    else
{
        NSLog(@"Switch is OFF");
        //Off Your SFX
    }

}

我真的不明白你的意思某些SFX 所以很难提供帮助

答案 1 :(得分:0)

你可能有一个选择。所以在 .h文件所在的开关关闭它,把这段代码。

@interface SettingScreen : UIViewController<AVAudioPlayerDelegate,AVAudioSessionDelegate>
{
    AVAudioPlayer *audioplayer;
}
<。>文件中的

-(void)viewDidLoad
{
    NSString* BS_path_blue=[[NSBundle mainBundle]pathForResource:@"Click" ofType:@"mp3"];
    audioplayer =[[AVAudioPlayer alloc]initWithContentsOfURL:[NSURL     fileURLWithPath:BS_path_blue]  error:NULL];
    audioplayer.delegate=self;
    [audioplayer prepareToPlay];

    UISwitch *soundsButton = [[UISwitch alloc]initWithFrame:CGRectMake(180, 8, 130, 27)];
    [self.view addSubview:soundsOnOffButton];
    [soundsOnOffButton addTarget:self action:@selector(buttonAction:)                forControlEvents:UIControlEventTouchUpInside];

     soundsButton.on = [[NSUserDefaults standardUserDefaults] boolForKey:@"sound"];
}

-(void)buttonAction:(UIButton *)sender
{
    if (soundsButton.on)
    {

        [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"sound"];
        [[NSUserDefaults standardUserDefaults] synchronize];
        if ([[NSUserDefaults standardUserDefaults] boolForKey:@"sound"]==YES)
        {
            [audioplayer play];
        }
    }
    else
    {
        [[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"sound"];
        [[NSUserDefaults standardUserDefaults] synchronize];
    }
}

现在,如果你想为某些东西发声。 (按钮用作示例)在另一个屏幕中,将委托和前四行添加到您的文件中,然后将此行添加到其操作中。

-(void)buttonAction:(UIButton *)sender
{
    if ([[NSUserDefaults standardUserDefaults] boolForKey:@"sound"]==YES)
    {
         [audioplayer play];
     }

    // other code
}

希望它有效。