降级到Xcode 6.0.1会导致代码中出现编译器错误



我刚刚从Xcode 6.1.1降级到6.0.1,因为在最新版本中,索引需要很长时间,最终从未完成,所以我无法运行我的应用程序。当我降级我的代码中的一些在6.1版本中运行良好的东西时,在6.0.1版本中收到了一个错误。我不知道为什么。这就是我所说的代码

任何人都知道可能出了什么问题以及如何解决这个问题。错误显示"无法使用CFBundle等类型的参数列表调用‘subscript’

非常感谢任何帮助

func playPianoButtonSound(button: UIButton) {
    var soundID: SystemSoundID = 0
    let soundURL = CFBundleCopyResourceURL(
        CFBundleGetMainBundle(), pianoButtonsSoundNames[button], "wav", nil)
    AudioServicesCreateSystemSoundID(soundURL, &soundID)
    AudioServicesPlaySystemSound(soundID)
}

您的引用"pianoButtonsSoundNames[button]"失败,因为UIButton对象"button"不是整数类型,而是应该有一个整数索引(介于0和任意值之间)。

我怀疑你在这里真正想做的是:

"pianoButtonsSoundNames[button.tag]"