gpt4 book ai didi

ios - NSURL/NSURLRequest 意外地为零

转载 作者:行者123 更新时间:2023-11-28 13:12:16 24 4
gpt4 key购买 nike

我正在尝试将 PDF 加载到 UIWebView 中,但是在使用 loadRequest 时,我收到错误消息 unexpectedly found nil while unwrapping an Optional。我的相关代码如下:

    let url = NSURL(string: "http://www.urartuuniversity.com/content_images/pdf-sample.pdf")!

println(url.fileURL)

println("The URL is \(url.absoluteURL!)")

let request = NSURLRequest(URL: url)

webView.loadRequest(request)

第二行代码输出 false(不出所料),但第三行输出正确的 URL。 webView 是一个连接的 UIWebView。

我看过几个类似错误的例子,但似乎没有一个适用,特别是因为 NSURL 似乎由于 URL.absoluteURL! 正确输出而工作,许多其他类似命令也是如此.

我也看到了对 RFC 2396 的引用,但是在查看 W3 的文档时,我的 URL 似乎遵循了这些准则,但如果没有,请告诉我格式是什么以及如何更改 URL (因为我将不得不再更改数千个,而这个 PDF 只是我在网上找到的一个示例 PDF)。

在调试部分查看时,url 是一个 NSURL,保存其值的地方表示 PDF 的 URL,而不是内存地址,这可能会部分导致我的一些问题。

编辑:为了让我的情况更奇怪,因为我使用的是带有 Split View和表格 View 的通用应用程序,当我加载 iPad 时,PDF 加载正确,但是当我回到主视图并单击某些内容,重新加载详细 View 时,发现致命异常。如果这没有意义,请告诉我,我会尽量让它更容易理解。

最佳答案

问题是你不知道什么是 nil。添加更多日志记录,如下所示:

let url = NSURL(string: "http://www.urartuuniversity.com/content_images/pdf-sample.pdf")!
let request = NSURLRequest(URL: url)
println(url)
println(request)
println(webView)
webView.loadRequest(request)

通过这种方式,通过测试您的应用并尝试重现崩溃,您会发现,就在崩溃之前, 正是 nil。我猜是 webView,但猜测不是编程 — 问题是,到目前为止, 只是在猜测。不要猜测。你有一个调试器!调试!!!

关于ios - NSURL/NSURLRequest 意外地为零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30881677/

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