バックグラウンドミュージックが再生されている場合にこのアプリを作成していますが、バックグラウンドミュージックが必要ない場合はユーザーが UISwitch で音楽を停止できるようにしたいです。スイッチを使用して音楽を再生および停止するためのコード(以下のコード)がすでにあります。私の質問はこれです。別のビュー (スイッチがオンになっていないビュー) に切り替えて、音楽が再生されている場合は、そのビューに戻ります。スイッチがオフになっているので、オンに戻すと(音楽がすでに再生されている場合でも)、再び再生され、互いにオーバーラップします(同じ音楽ファイル)。
スイッチと音楽プレーヤーのコード...
-(IBAction)play:(id)sender {
if (audioControlSwitch.on) {
[sound setTextColor:[UIColor blueColor]];
[sound setText:@"Sound On"];
NSURL *url = [NSURL fileURLWithPath:[NSString stringWithFormat:@"%@/Tone 2.m4a", [[NSBundle mainBundle] resourcePath]]];
NSError *error;
audioPlayer1 = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:&error];
audioPlayer1.numberOfLoops = 100000000000000000;
[audioPlayer1 play];
} else {
[sound setTextColor:[UIColor darkGrayColor]];
[sound setText:@"Sound Off"];
[audioPlayer1 stop];
}
}