图片由 url 为 Apple Watch 提供

image by url for Apple Watch

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

我在手表上有一个 table 试图在每一行中加载图像。我是 运行 这段代码,然后我更新了 table 的文本字段。无需尝试获取图像,所有文本都会正确加载。

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

    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 并且 table 的其他部分已正确加载,我似乎无法弄清楚是什么原因导致的。非常感谢任何帮助!

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

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

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