【发布时间】:2017-12-24 15:33:23
【问题描述】:
我有一些 ViewCotroller,我在其中点击了一个按钮 - 一些音频文件正在播放。我想在更改/关闭此 ViewController 时停止播放音频。我该怎么做?
我尝试向 viewWillDisappear 添加一些方法,如果我不点击任何按钮,它就会崩溃。但是,如果我点击了某个按钮 - 它会正常工作。 ????
import UIKit
import AVFoundation
class BossViewController: UIViewController {
var audioPlayer = AVAudioPlayer()
override func viewDidLoad() {
super.viewDidLoad()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
//MARK: - Stop sound when we're change/close this viewController
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
audioPlayer.stop()
}
这是我的按钮的样子:
@IBAction func boss1(_ sender: AnyObject) {
let audioFile = NSURL(fileURLWithPath: Bundle.main.path(forResource: "shamp", ofType: "mp3")!)
do {
audioPlayer = try AVAudioPlayer(contentsOf: audioFile as URL)
audioPlayer.prepareToPlay()
} catch {
print("Problem in getting File")
}
audioPlayer.play()
}
【问题讨论】:
-
@a-lebedko:什么是崩溃?编辑您的问题并添加崩溃日志/描述,以帮助我们更好地了解问题
-
如果我的回答对您有用,您可以通过单击复选标记接受我的回答,以便其他有相同问题的人可以转到我的回答。