【发布时间】:2014-11-05 18:51:42
【问题描述】:
我正在关注this tutorial,作为我正在使用 Swift 开发的 RSS feeder 应用程序的起点。我知道自本教程以来 Swift 中发生了一些变化,但似乎都没有解释为什么我会遇到这个问题。
相关代码(据我所知)在我的 TableViewController 中如下所示:
override func viewDidLoad() {
super.viewDidLoad()
let url:NSURL = NSURL(string: "my.url.string")
parser = NSXMLParser(contentsOfURL: url)
parser.delegate = self
parser.parse() // <- Thread 1: EXC_BAD_ACCESS (code=1, address=0x0)
}
实际的解析器委托方法似乎没有问题,因为我在它们上设置了断点,并且在崩溃之前它们甚至没有被调用。
我的假设是这是一个 Swift 错误,但我想确保在向苹果抱怨之前我没有遗漏任何东西。
【问题讨论】:
-
我很高兴大卫能够回答我的问题,即使我没有包含实际的 ParserDelegate 方法。要清楚;我原来的方法看起来像这样:
func parser(parser: NSXMLParser, didStartElement elementName: String, namespaceURI: String, qualifiedName qName: String, attributes attributeDict: [NSObject : AnyObject])现在看起来像这样:func parser(parser: NSXMLParser, didStartElement elementName: String, namespaceURI: String!, qualifiedName qName: String!, attributes attributeDict: [NSObject : AnyObject]!)再次感谢大卫!
标签: ios swift exc-bad-access nsxmlparser xcode6