Lim*_*ean 36 ios swift wkwebview
在我的应用程序中,我希望使用透明背景制作WKWebView,因此后面的视图(一个ImageView)可以显示为背景图片.
webView!.opaque = false
webView!.backgroundColor = UIColor.clearColor()
Run Code Online (Sandbox Code Playgroud)
上面的代码适用于UIWebView,但如果webView是WKWebView,则会显示白色背景.
还尝试在CSS中放置透明背景颜色.结果是一样的,只适用于UIWebView但不适用于WKWebView.有什么建议吗?
rob*_*pim 45
对于使用Swift的iOS 10+:
self.webView = WKWebView()
self.webView!.isOpaque = false
self.webView!.backgroundColor = UIColor.clear
self.webView!.scrollView.backgroundColor = UIColor.clear
Run Code Online (Sandbox Code Playgroud)
Bil*_*fas 20
此代码可能对您有所帮助.针对Swift 3+进行了更新
self.webView = WKWebView()
self.webView.isOpaque = false
self.webView.backgroundColor = UIColor.clear
self.webView.scrollView.backgroundColor = UIColor.clear
Run Code Online (Sandbox Code Playgroud)
小智 8
using objective c.
wkWebView.backgroundColor = [UIColor clearColor];
wkWebView.scrollView.backgroundColor = [UIColor clearColor];
wkWebView.opaque = false;
Run Code Online (Sandbox Code Playgroud)
它将删除 wkwebView 中的白色背景色。
小智 7
适用于 macOS 的 WKWebView,带有 Objective-C
这是 macOS 中透明 WKWebView 视图的魔力线。
[webView setValue:[NSNumber numberWithBool: YES] forKey:@"drawsTransparentBackground"];
Run Code Online (Sandbox Code Playgroud)
Uncheck Opaque
checkbox in Interface Builder
Update July 2021, Xcode 13
Looks like the checkbox is still there
我知道这是一个非常古老的问题。但今天我一直在为此苦苦挣扎。我不知道是不是只有我一个人这样,WKWebView中webView.backgroundColor是未定义的,webView.opaque是只读的。我解决这个问题的唯一方法是将 Web 视图图层背景颜色设置为 CGColor 清晰
webview.wantsLayer = true
webView.layer?.backgroundColor = NSColor.clearColor().CGColor
Run Code Online (Sandbox Code Playgroud)
和包含 NSView 的方式相同
webViewParent.layer?.backgroundColor = NSColor.clearColor().CGColor
Run Code Online (Sandbox Code Playgroud)
这是唯一对我有用的东西,我希望它也能对其他人有所帮助。
还没有使用过 WKWebView,但即使 UIWebView 也曾经遇到过这个问题,解决方案是将 html 内容包装在如下内容中:
<body style="background-color:transparent;"></body>
Run Code Online (Sandbox Code Playgroud)
希望能帮助到你。
归档时间: |
|
查看次数: |
16207 次 |
最近记录: |