Я новичок в программировании и только что работаю над своим первым приложением. Я не мог найти на это ответа несколько недель. Я был бы очень признателен за помощь.
У меня есть фоновая музыка через AVAudioPlayer (единственный звук в моем приложении), которая начинает воспроизводиться при открытии моего приложения - вот код в моем appdelegate.m:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
NSString *bgmusic=[[NSBundle mainBundle]pathForResource:@"cloud_two-full-" ofType:@"mp3"];
bgmusic1=[[AVAudioPlayer alloc]initWithContentsOfURL:[NSURL fileURLWithPath:bgmusic] error:NULL];
bgmusic1.delegate=self;
bgmusic1.numberOfLoops=-1;
[bgmusic1 play];
[bgmusic1 setVolume:1.0];
}
Итак, я создал uiswitch, который хочу использовать для отключения фоновой музыки. Вот IBAction в моем viewcontroller.m:
- (IBAction)speakerOnOff:(id)sender {
static BOOL muted = NO;
if (muted) {
[bgmusic1 setVolume:1.0];
} else {
[bgmusic1 setVolume:0.0];
}
muted = !muted;
}
Но когда я выключаю переключатель, музыка продолжает играть с нормальной громкостью. У меня только 1 контроллер представления. Пожалуйста помоги! Я просто хочу, чтобы музыка отключилась, когда переключатель выключен, а затем вернулась к громкости 1.0, когда переключатель снова включен.