我很困難如何訪問和更改AVAudioPlayer變量從一個類到另一個類。如何停止從另一個類的SpriteKit遊戲中的音樂
我有一個名爲GameScene類,它有:
var backgroundMusicPlayer: AVAudioPlayer!
而且沿的代碼,我有
func playBackgroundMusic(filename: String) {
let url = NSBundle.mainBundle().URLForResource(
filename, withExtension: nil)
if (url == nil) {
println("Could not find file: \(filename)")
return
}
var error: NSError? = nil
backgroundMusicPlayer =
AVAudioPlayer(contentsOfURL: url, error: &error)
if backgroundMusicPlayer == nil {
println("Could not create audio player: \(error!)")
return
}
backgroundMusicPlayer.numberOfLoops = -1
backgroundMusicPlayer.prepareToPlay()
backgroundMusicPlayer.play()
}
我一直無法弄清楚如何訪問變量backgroundMusicPlayer
從我的主菜單類。如果我可以訪問它,我相信backgroundMusicPlayer.stop()
將做到這一點。
您可以創建一個具有您當前'backgroundMusicPlayer'實例的單例類。檢查這個答案:http://stackoverflow.com/questions/19086419/how-to-create-avplayer-singleton-class – WangYudong