我很困难如何访问和更改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