WKWebView的透明背景
在我的应用程序中,我希望使WKWebView具有透明背景,所以背后(一个ImageView)的视图可以作为背景图片显示。
webView!.opaque = false webView!.backgroundColor = UIColor.clearColor()
上面的代码与UIWebView工作正常,但如果webView是WKWebView,将显示一个白色背景。
也尝试在CSS中放置透明背景颜色。 结果是一样的,只能在UIWebView中使用,而不能在WKWebView中使用。 任何build议?
对于使用Swift的iOS 10+:
self.webView = WKWebView() self.webView!.isOpaque = false self.webView!.backgroundColor = UIColor.clear self.webView!.scrollView.backgroundColor = UIColor.clear
这个错误似乎在Beta 5中得到了修复。
此代码可能会帮助你。 更新了Swift 3+
self.webView = WKWebView() self.webView.isOpaque = false self.webView.backgroundColor = UIColor.clear self.webView.scrollView.backgroundColor = UIColor.clear
下面的代码适用于我:
[wkWebView setValue:YES forKey:@"drawsTransparentBackground"];
还没有与WKWebView工作,但即使UIWebView曾经有这个问题,解决scheme是包装的内容像这样的HTML内容:
<body style="background-color:transparent;"></body>
希望能帮助到你。
我知道这是一个非常古老的问题。 但是我今天一直在挣扎。 我不知道是否只是我,但是在WKWebView中未定义webView.backgroundColor,而webView.opaque是只读的。 解决这个问题的唯一方法是将web views图层的背景色设置为CGColor clear
webview.wantsLayer = true webView.layer?.backgroundColor = NSColor.clearColor().CGColor
和包含NSView的方式一样
webViewParent.layer?.backgroundColor = NSColor.clearColor().CGColor
这是我唯一的工作,我希望它可以帮助别人。