gpt4 book ai didi

ios - Swift 中的 parser.parse() 导致 EXC_BAD_ACCESS

转载 作者:IT王子 更新时间:2023-10-29 05:48:48 25 4
gpt4 key购买 nike

我正在关注 this tutorial作为我在 Swift 中开发的 RSS 供稿器应用程序的快速启动。我知道自本教程以来 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)

}

实际的解析器委托(delegate)方法似乎没有问题,因为我在它们上面放置了断点,它们甚至在崩溃前都没有被调用。

我的假设是这是一个 Swift 错误,但我想在向 apple 投诉之前确保我没有遗漏任何东西。

最佳答案

自动翻译的 header 中似乎有一个错误,它假定始终使用限定的 namespace ,但是,由于有时它们可​​能为零,因此它会崩溃。

如果您使用:

func parser(parser: NSXMLParser, didStartElement elementName: String, namespaceURI: String!, qualifiedName qName: String!, attributes attributeDict: [NSObject : AnyObject]!)

通过隐式解包命名空间和 qualifiedName 参数(或显式包装也应该有效),您应该可以开始了。

您可能必须对您提供的任何采用 namespaceURI 或 qualifiedName 参数的委托(delegate)方法进行类似的更改。

关于ios - Swift 中的 parser.parse() 导致 EXC_BAD_ACCESS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25793940/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com