ビューが開いているときにバックグラウンドミュージックがあり、ビューを他のビューに切り替えてメインビューに戻っても、バックグラウンドミュージックは問題なく再生されます。しかし、戻るボタンのコードを
mainViewController *mainView =[[mainViewController alloc] initWithNibName:nil bundle:nil];
mainView.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[self presentModalViewController:mainView animated:YES]; // this will flip from right
に
[self dismissModalViewControllerAnimated:YES]; // this will flip back from left
メイン メニューに戻ると、バックグラウンド ミュージックが再生されません。なぜだろう?それを修正する方法は?なんらかの理由で、コードを [self disconnectModalViewControllerAnimated:YES]; に変更します。ビューを他の方法から反転させたいからです。
このコードを使用してmainViewを表示すると、バックグラウンドミュージックが再生されます
- (void)viewDidLoad
{
[super viewDidLoad];
NSString *pathFile = [[NSBundle mainBundle] pathForResource:@"Start" ofType:@"mp3"];
player = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:pathFile] error:NULL];
[player play];
}
ビューが変更されたら停止
- (void) viewDidDisappear:(BOOL)animated
{
[player stop];
}