iOS 上的背景音乐 Stop/Mute

Background Music Stop/Mute on iOS

我正在创建我的第一个应用程序。我有一个使用以下代码在后台播放音乐的应用程序:

var backgroundMusicPlayer = AVAudioPlayer()

override func viewDidLoad() {
    super.viewDidLoad()

    //background Music
    func playBackgroundMusic(filename: String) {
        let url = NSBundle.mainBundle().URLForResource(filename, withExtension: nil)
        guard let newURL = url else {
            print("Could not find file: \(filename)")
            return
        }
        do {
            backgroundMusicPlayer = try AVAudioPlayer(contentsOfURL: newURL)
            backgroundMusicPlayer.numberOfLoops = -1
            backgroundMusicPlayer.prepareToPlay()
            backgroundMusicPlayer.play()
        } catch let error as NSError {
            print(error.description)
        }

    }

    playBackgroundMusic("Starship.wav")
}

那么当我切换到另一个ViewController时,我应该怎么做才能stop/mute背景音乐?我应该这样做我的 FirstViewController 还是 SecondViewController?

显然,我不想在 SecondViewController 中关闭声音,因为我还有其他东西要在那里播放。

要静音,我只需将音量静音即可。

backgroundMusicPlayer.volume = 0

如果我想要声音,请将其设置为正常

backgroundMusicPlayer.volume = 1

如果你只是想暂停音乐,你可以拨打

backgroundMusicPlayer.pause()

要恢复你打电话

 backgroundMusicPlayer.resume()

如果你想停止音乐并将其重置到开头,你可以这样说

 backgroundMusicPlayer.stop()
 backgroundMusicPlayer.currentTime = 0        
 backgroundMusicPlayer.prepareToPlay()

您是否也考虑过将您的音乐放入单例中 class 以便在不同的 viewController 中播放音乐更容易。

不确定这是否是您要查找的内容,因为您的问题有点含糊。