我遇到了一些符合 AVAudioPlayerDelegate
的奇怪问题。以下正是我在一个全新的 Xcode 项目中所拥有的:
import UIKit
import AVFoundation
class ViewController: UIViewController {
let audioPlayer = AVAudioPlayer()
override func viewDidLoad() {
super.viewDidLoad()
audioPlayer.delegate = self
}
}
extension ViewController: AVAudioPlayerDelegate {}
出于某种原因,每次在我设置委托(delegate)的行上我都会崩溃:Thread 1: EXC_BAD_ACCESS (code=1, address=0x8)
控制台是空的。
最佳答案
您必须使用 AVAudioPlayer
的有效初始化器之一; init()
不是其中之一(即使它可以编译)。
有效的是:
init(contentsOfURL url: NSURL) throws
init(data data: NSData) throws
init(contentsOfURL url: NSURL,
fileTypeHint utiString: String?) throws
init(data data: NSData,
fileTypeHint utiString: String?) throws
关于ios - 符合 AVAudioPlayerDelegate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35417848/