我正在使用Swift制作音效板。它运行良好,但我正在尝试实现一个检查,即检查AVAudioPlayer实例是否正在播放,如果是,则停止它。声音在表格视图中列出,该表格获取来自数组的数据,这个数组中存储了我的Sound类(包括2个变量,声音的标题和URL)。
我在ViewController Class中拥有AVAudioPlayer、AVAudioSession以及我的声音数组。
当我点击该行时,应用程序崩溃并且我收到的全部内容是"(lldb)"。您有任何想法发生了什么?或者我完全错误地执行了操作吗?预先感谢您。
我在ViewController Class中拥有AVAudioPlayer、AVAudioSession以及我的声音数组。
var session = AVAudioSession.sharedInstance()
var audioPlayer = AVAudioPlayer()
var sounds: [Sound] = []
当应用程序用户选择一行时,我实现了音频播放,如下所示:
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
if audioPlayer.playing {
audioPlayer.stop()
} else {
var sound = self.sounds[indexPath.row]
var baseString : String = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.UserDomainMask, true)[0] as String
var pathComponents = [baseString, sound.url]
var audioNSURL = NSURL.fileURLWithPathComponents(pathComponents)
self.audioPlayer = AVAudioPlayer(contentsOfURL: audioNSURL, error: nil)
self.audioPlayer.play()
}
tableView.deselectRowAtIndexPath(indexPath, animated: true)
}
当我点击该行时,应用程序崩溃并且我收到的全部内容是"(lldb)"。您有任何想法发生了什么?或者我完全错误地执行了操作吗?预先感谢您。