我想创建一个UIWebView,其背景为50%透明,但其内容如根本不透明。
这样的事情可能吗?
感谢。
答案 0 :(得分:11)
webView.alpha=0.5f;
[webView setBackgroundColor:[UIColor clearColor]];
[webView setOpaque:NO];
答案 1 :(得分:2)
看起来这可能是可能的。请参阅此博客文章:
http://erikloehfelm.blogspot.com/2009/04/transparent-background-on-iphone.html
使背景半透明取决于您是否可以将网页的BODY元素的CSS颜色设置为半透明颜色(而不是“透明”)。
此外,如果您不控制您尝试显示的网页的HTML,此博客文章未显示如何执行此操作,但UIWebView
可以通过编程方式更改此颜色页面内容加载后。
答案 2 :(得分:0)
为webView.backgroundColor
和html <body>
css样式更改透明到任何颜色/ alpha ,以找到您的组合最喜欢。 loadHTMLString
的示例:
- (void)embedYouTubeWithVideoID:(NSString *)videoID {
webView.backgroundColor = [UIColor clearColor];
CGFloat w = webView.frame.size.width;
CGFloat h = webView.frame.size.height;
NSString *ytUrlString = [NSString stringWithFormat:@"http://www.youtube.com/v/%@&version=3&autohide=1&autoplay=1&cc_load_policy=1&fs=1&hd=1&modestbranding=1&rel=0&showsearch=0", videoID];
NSString *embed = [NSString stringWithFormat:@"\
<html>\
<head>\
<meta name=\"viewport\" content=\"initial-scale = 1.0, user-scalable = no, width = %0.0f\"/>\
</head>\
<body style=\"background:transparent; margin-top:0px; margin-left:0px\">\
<div>\
<object width=\"%0.0f\" height=\"%0.0f\">\
<param name=\"movie\" value=\"%@\" />\
<param name=\"wmode\" value=\"transparent\" />\
<param name=\"allowFullScreen\" value=\"true\" />\
<param name=\"quality\" value=\"high\" />\
<embed src=\"%@\" type=\"application/x-shockwave-flash\" allowfullscreen=\"true\" allowscriptaccess=\"always\" wmode=\"transparent\" width=\"%0.0f\" height=\"%0.0f\" />\
</object>\
</div>\
</body>\
</html>", w, w, h, ytUrlString, ytUrlString, w, h];
[webView loadHTMLString:embed baseURL:nil];
}