4

我正在尝试使用此解决方案:load-image-from-url-on-watchkit

我在手表上有一张桌子,我试图在每一行中加载图像。我正在运行此代码,然后更新表的文本字段。无需尝试获取图像,所有文本都可以正确加载。

但是当我添加这段代码时:

    let site = "myurl.com/image.jpeg"    //I have copied this and it is an image
    dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {
                let url:NSURL = NSURL(string:site)!
                var data:NSData = NSData(contentsOfURL: url)!
                var placeholder = UIImage(data: data)!

                dispatch_async(dispatch_get_main_queue()) {
                    row.myRowImage.setImage(placeholder)
                }
            }

我收到错误:致命错误:在展开可选值时意外发现 nil

如果它是有效的 url 并且表格的其他部分已正确加载,我似乎无法弄清楚会导致此问题的原因。任何帮助是极大的赞赏!

4

2 回答 2

3

您将要更改应用程序传输安全性的 plist 中的设置。如果您在手表上进行网络通话,请在手表扩展 plist 中执行此操作。这是一个有用的链接

此外,对于您的网址,您需要使用 http:// 或 https:// 才能使其正常工作。

于 2015-07-22T23:24:34.997 回答
2

URL 字符串需要符合RFC 2396中描述的 URL 格式。基本上,您需要在 URL 字符串的开头有 http:// 或 ftp 等。

于 2015-07-22T23:29:57.633 回答