0

所以这段代码在 iOS 模拟器上运行良好,但在我的 iPad Mini 上却不行

    var sound = NSURL(fileURLWithPath:"/Users/Dan/Documents/XCode Code/Colors- Tabbed?/Colors- Tabbed?/Sweg.aiff")
    var audioPlayer = AVAudioPlayer()
    audioPlayer = AVAudioPlayer(contentsOfURL: sound, error: &error)
    var error: NSError?

我在最后一行收到错误“在展开可选值时意外发现 nil”。

4

1 回答 1

2

好像AVAudioPlayer还没有审核。它返回一个隐式展开的可选项,它可以是nil,并且显然你的 iPad 上。(可能是因为你的 iPad 不知道在哪里/Users/Dan/Documents/...,因为它在你的电脑上。)

您想以可选值捕获播放器,以便nil在使用之前进行测试:

var sound = NSURL(fileURLWithPath:"/Users/Dan/Documents/XCode Code/Colors- Tabbed?/Colors- Tabbed?/Sweg.aiff")
var error: NSError?
var audioPlayer: AVAudioPlayer? = AVAudioPlayer(contentsOfURL: sound, error: &error)

if let audioPlayer = audioPlayer {
    // do things with the audioPlayer
}
于 2014-11-23T22:07:26.930 回答