线程1:EXC_BREAKPOINT(代码= 1,子码= 0x100813b50)致命错误
问题描述:
import UIKit
import AVFoundation
class ViewController: UIViewController, AVAudioPlayerDelegate {
var audioPlayer : AVAudioPlayer!
let soundArray = ["dog","cow","bear","pig"]
override func viewDidLoad() {
super.viewDidLoad()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
@IBAction func dogSound(_ sender: UIButton) {
playSound(soundName: soundArray[sender.tag - 1])
}
func playSound (soundName : String) {
let soundURL = Bundle.main.url(forResource:soundName, withExtension: "wav")
do {
audioPlayer = try AVAudioPlayer(contentsOf: soundURL!)
}
catch {
print(error)
}
audioPlayer.play()
}
}
你可以看到下面的图片我有一个问题展开。我是Swift语言的新手,这是第三天,我试图解决这个问题,但我找不到解决方案。你能帮我并告诉如何解决这个零事吗?干杯线程1:EXC_BREAKPOINT(代码= 1,子码= 0x100813b50)致命错误
fatal error: unexpectedly found nil while unwrapping an Optional value
答
错误原因:声音文件正在使用的项目不存在。请检查声音文件的名称或扩展名(.wav,.mp3)。
详细说明: 当您正在使用的值不存在时出现此错误,在您的情况下,您尝试通过在数组中传递名称尝试使用的声音文件不存在。
可能的原因: - 1)您正在使用的声音文件不存在于项目 2)在项目中的声音文件的一些名或扩展名(.WAV,.MP3)和错配他们的名字被用在代码中。
调试问题: - 1)尝试打印的声音文件的名称(soundArray [sender.tag - 1])作为第1行中
FUNC playSound(soundName:字符串){
}
应用程序包中的声音文件不存在。并且不要发布截图,发布代码(文本) – vadian
您是否在项目中添加了dog.wav或您的数组name.wav文件? –
嗨,是的,我确实把所有的声音文件放在我的项目中。我正在尝试用声音练习,但是现在就这样对我进行惩罚。 –