【发布时间】:2015-05-24 13:17:47
【问题描述】:
这是我的功能:
func playMusic(filename :String!) {
var playIt : AVAudioPlayer!
let url = NSBundle.mainBundle().URLForResource(filename, withExtension: nil)
if url == nil {
println("could not find \(filename)")
return
}
var error : NSError?
playIt = AVAudioPlayer(contentsOfURL: url, error: &error)
if playIt==nil {
println("could not create audio player")
return
}
playIt.numberOfLoops = -1
playIt.prepareToPlay()
playIt.play()
}
我调试了我的应用,我看到控制台告诉我:无法创建音频播放器
看起来我的playIt var 为零
我该如何解决?
【问题讨论】:
-
您检查过
error变量的值吗? -
error拥有您问题的答案。可能还值得检查url的值,以确保它是您认为的那样......另外,你不应该接受String!参数......要么采用String或String?。 .. -
大多数人倾向于避免强制展开(!),总是选择使用条件(?)。正如乔伊德维拉所说。这是为了防止您的应用在返回 nil 时发生任何崩溃。
标签: swift null avaudioplayer nsbundle