J'essaie d'afficher dans un WkWebView une page html que j'ai précédemment téléchargée et stockée dans une chaîne.
Voici comment configurer mon WkWebView:
webView = WKWebView(frame: self.blankView.frame)
webView.navigationDelegate = self
webView.loadHTMLString(tipShow.htmlString!, baseURL: nil)
view.addSubview(webView)
La chaîne html que j'essaie de montrer est:
<html> <style type="text/css"> * { -webkit-touch-callout: none; -webkit-user-select: none; /*
Disable selection/copy in UIWebView */
}
</style> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width,
initial-scale=1">
<title>TITLE</title>
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.2/jquery.mobile-1.4.2.min.css">
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script> <script
src="http://code.jquery.com/mobile/1.4.2/jquery.mobile-1.4.2.min.js"></script> </head>
<body>
<div data-role="page" id="page1">
<div align=justify style="margin-left:20px; margin-right:20px">
<font size="4.5" face="HelveticaNeue-Light"><br>
<p>
THIS IS A TEST
</p>
</div> </div>
</body></html>
Lorsque le WkWebView s'affiche dans ma vue, il en est ainsi pour toujours.
Quelqu'un peut m'expliquer pourquoi et comment résoudre ce problème?
rapide
Vous le rendez peut-être un peu trop compliqué. Cela a fonctionné pour moi ...
Tout d'abord, importez WebKit
Deuxièmement, créez un @IBOutlet sous votre classe:
@IBOutlet weak var webView: WKWebView!
Troisièmement, placez ce qui suit dans votre viewDidLoad ():
let htmlString:String! = "\(YourString)"
webView.loadHTMLString(htmlString, baseURL: NSBundle.mainBundle().bundleURL)
webView.loadHTMLString(htmlString, baseURL: Bundle.main.bundleURL)