Ios WKWebView内容
我正在使用WKWebView()。我的webView高度的大小为100。 我正在WKWebview中加载.gif图像。gif图像高度的大小=300。我想压缩webview中的图像以适应它 如下面的屏幕截图所示,图像没有缩小到webView大小,其原始大小为300 如果我将六个WkWebview的值设为300,则它是正确的 我试过给予Ios WKWebView内容,ios,swift,ios10,wkwebview,Ios,Swift,Ios10,Wkwebview,我正在使用WKWebView()。我的webView高度的大小为100。 我正在WKWebview中加载.gif图像。gif图像高度的大小=300。我想压缩webview中的图像以适应它 如下面的屏幕截图所示,图像没有缩小到webView大小,其原始大小为300 如果我将六个WkWebview的值设为300,则它是正确的 我试过给予 self.webView.contentMode = .scaleAspectFit self.webView.sizeToFit()
self.webView.contentMode = .scaleAspectFit
self.webView.sizeToFit()
self.webView.autoresizesSubviews = true
self.webView.scrollView.contentInset = UIEdgeInsetsMake(0,0,0,0)
self.webView.scrollView.isScrollEnabled = false
这是我添加WKWebview的方式:
self.webView = WKWebView()
self.webView.frame = CGRect.init(x: 0, y: 64, width: self.view.frame.width, height:200)
self.webView.autoresizingMask = .flexibleWidth
let heightConstraint = NSLayoutConstraint(item: self.webView, attribute: NSLayoutAttribute.height, relatedBy: NSLayoutRelation.equal, toItem: nil, attribute: NSLayoutAttribute.notAnAttribute, multiplier: 1, constant: 200)
self.view.addSubview(self.webView)
let filePath = Bundle.main.path(forResource:"token", ofType: "gif")
let gifData = NSData(contentsOfFile: filePath!)
self.webView.load(gifData as! Data, mimeType: "image/gif", characterEncodingName: String(), baseURL: NSURL() as URL)
根据web视图的配置,您可以:
img
标记的样式,使其填充web视图的高度:
let htmlContent = "<img src=\"token.gif\" style=\"margin: auto; height: 100%\" />"
webView.loadHTMLString(htmlContent, baseURL: Bundle.main.bundleURL)
要加快web视图的速度,您可以内联图像数据而不是引用gif文件-有关此主题的详细信息,请参阅。这是我添加WkWebview:self.webView=WkWebview()self.webView.frame=CGRect.init(x:0,y:64,width:self.view.frame.width,height:200)的方式self.webView.autoresizingMask=.flexibleWidth let heightConstraint=NSLayoutConstraint(项:self.webView,属性:NSLayoutAttribute.height,关联方:NSLayoutRelation.equal,toItem:nil,属性:NSLayoutAttribute.NotAttribute,乘数:1,常数:200)self.view.addSubview(self.webView)让filePath=Bundle.main.path(forResource:“token”,of type:“gif”)让gifData=NSData(contentsOfFile:filePath!)self.webView.load(gifData为!Data,mimeType:“image/gif”,characterEncodingName:String(),baseURL:NSURL()作为URL)我只需要将WKWebview中加载的图像大小调整为webview大小@克里斯蒂基试过你的解决办法。“webView.loadHTMLString”未加载任何内容。添加基本url有效!谢谢你的快速修复。唯一的问题是,一旦加载了视图,webview就需要几毫秒来加载内容。
let htmlContent = "<img src=\"token.gif\" style=\"margin: auto; height: \(webViewHeight)px\" />"
webView.loadHTMLString(htmlContent, baseURL: Bundle.main.bundleURL)