【发布时间】:2017-10-19 12:40:26
【问题描述】:
它显示灰色框架,但只有黑色边框...没有显示视频! 提示:加载函数只接受数据类型,不接受字符串...但是转换后,什么都没有!
@IBOutlet weak var webView: UIWebView!
func callWS(){
let url = URL(string: "endpoint url")
let config = URLSessionConfiguration.default
let session = URLSession(configuration: config)
let task = session.dataTask(with: url!, completionHandler: {
(data, response, error) in
if error != nil
{
print("Error")
}
else
{
if let content = data
{
do {
let myJSON = try JSONSerialization.jsonObject(with: content) as? [String:Any]
let text:String = myJSON?["text"] as! String
let textData:Data = text.data(using: .utf8)!
//self.webView.loadHTMLString(text, baseURL: nil) no frame
self.webView.load(textData, mimeType: "text/html", textEncodingName: "utf8", baseURL: NSURL() as URL)
}
catch {}
}
}
})
task.resume()
}
【问题讨论】:
-
您认为问题出在哪里?在
let text:String = myJSON?["text"] as! String行,text的值是多少?它是有效的html吗?如果字符串是有效的 html,.loadHTMLString()应该可以正常工作。 -
在我的问题之上,有图像......它显示了模拟器屏幕。 self.test.load(text.data(using: .utf8)!, mimeType: "text/html", textEncodingName: "UTF-8", baseURL: NSURL() as URL) //文本是来自 json 的字符串,在字符串是 html...它是有效的 html,在 Android 上工作...
-
webViewText.loadDataWithBaseURL("http://.", htmlText, "text/html", "UTF-8", null); //这适用于android...第一个参数是baseURL...如何在Swift中设置它?也许,有错误......
-
您正在从“端点 url”获取 JSON 数据,是吗?您是否在解析 JSON 数据以获取 html 字符串 以加载到 Web 视图中?或者您是从 JSON 数据中提取一个新的 URL,并且想要在 Web 视图中转到该 URL?
-
解析 JSON 数据以获取要加载到 Web 视图中的 html 字符串。我只使用了 json 对象中的一个参数,其中包含 html 字符串代码。
标签: ios swift xcode iframe swift3