符合AVAudioPlayerDelegate

时间:2016-02-15 19:49:30

标签: ios swift

我遇到了一些符合AVAudioPlayerDelegate的奇怪麻烦。以下是我在一个全新的Xcode项目中所拥有的:

import UIKit
import AVFoundation

class ViewController: UIViewController {
  let audioPlayer = AVAudioPlayer()
  override func viewDidLoad() {
    super.viewDidLoad()
    audioPlayer.delegate = self
  }
}

extension ViewController: AVAudioPlayerDelegate {}

出于某种原因,我每次都在我设置委托的行上崩溃:Thread 1: EXC_BAD_ACCESS (code=1, address=0x8)

控制台为空。

1 个答案:

答案 0 :(得分:2)

您必须使用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