Фоновая музыка играет дважды
Когда представление загружается в мое меню (menuViewController), запускается фоновая музыка (которая работает). Затем, когда я нажимаю "Пуск" и захожу в свою игру (GameViewController) и возвращаюсь в меню (menuViewController), он начинает играть дважды.
Вот мой viewDidLoad()
override func viewDidLoad() {
super.viewDidLoad()
if x == false{
setButtons()
// get path of audio file
let myFilePathString = NSBundle.mainBundle().pathForResource("Background Music Loop (Free to Use)", ofType: "mp3")
if let myFilePathString = myFilePathString {
let myFilePathURL = NSURL(fileURLWithPath: myFilePathString)
do { try myAudioPlayer = AVAudioPlayer(contentsOfURL: myFilePathURL)
myAudioPlayer.volume = 0.4
myAudioPlayer.prepareToPlay()
myAudioPlayer.play()
myAudioPlayer.numberOfLoops = -1
}catch{
print("error")
}
}
}
}
Я попытался создать экземпляр menuViewController, а затем использовать этот экземпляр вместо автоматического создания нового (что, я думаю, не сработало)
Это в моем GameViewController
@IBAction func goToMenu(sender: AnyObject) {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let vc = storyboard.instantiateViewControllerWithIdentifier("menuViewController")
self.presentViewController(vc, animated: true, completion: nil)
}
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?)
{
if segue.identifier == "gameToMenu" {
let destinationController = segue.destinationViewController as! menuViewController
destinationController.x = true
}
Я также получаю сообщение об ошибке:
"Предупреждение: Попытайтесь представить Ninja.menuViewController: 0x7fdad4cdbf20 на Ninja.GameViewController: 0x7fdad1c1d7a0, чье представление не находится в иерархии окон!"