WatchKit 是否支持 html?有没有像UIWebview这样的控制器



WatchKit支持html吗?有没有像UIWebview这样的控制器?

我的客户想要在 Apple Watch 中显示网页。 这可能吗?

WatchKit中没有UIWebView(既没有WatchOS 1也没有WatchOS 2)。

但是,完全可以解决此问题:

您可以加载HTML,挑选出相关内容,并将其显示在例如Label中。然而,这不是一个明智的解决方案,因为网站所有者可以更改其布局并使您的应用程序无用,直到您更新它。

我的建议是向服务器发送一个GET请求,如果他们有API,则以JSON格式接收相关数据。如果他们不这样做,您可以使用和服等服务将网站转换为API

或者您可以设置自己的服务器,该服务器用作API。您只需向它发送请求,它就会查询网站/加载HTML,并将相关内容返回到您的应用程序。

无论如何,解决方案是从网站获取相关内容并使用标签和图像视图显示该内容。

似乎 WatchOS5 添加了对 WebKit 的有限支持:

  • 如何在watchOS 5上使用WebKit?
  • https://developer.apple.com/videos/play/wwdc2018/239

watchKit 中没有 webView,但我设法将 HTML 转换为格式化字符串

func convertHTMLToFormattedText ( htmlText : String , myLabel : WKInterfaceLabel) {
    let attributeText: NSAttributedString?
    if let htmlData = htmlText.dataUsingEncoding(NSUnicodeStringEncoding) {
        do {
            attributeText  =  try   NSAttributedString(data: htmlData , options: [NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType], documentAttributes: nil)
            myLabel.setAttributedText(attributeText)
        }catch let e as NSError {
            print("Couldn't translate (htmlText): (e.localizedDescription) ")
        }

    }
}

No.WatchKit中没有类似UIWebView的东西。

最新更新