webview 透明

原文地址:点击打开链接

最近使用了UIWebView,发现当如下设置时

  1. myWebView.backgroundColor = [UIColor clearColor];  
没有实现预期的透明效果

后来加上

  1. myWebView.opaque = NO;  
  2. myWebView.backgroundColor = [UIColor clearColor];  

OK!  webView 实现了透明


webview 加载html文本 

  1. -(void)addWebView  
  2. {  
  3.     UIWebView *webView = [[UIWebView alloc]initWithFrame:CGRectMake(10, 10, 300, 200)];  
  4.     webView.opaque = NO;  
  5.     [self.view addSubview:webView];  
  6.     webView.backgroundColor = [UIColor cleanColor];  
  7.     NSString *ring = @"<h3>请客劵是什么?</h3><p><span style=\"font-size: 14px; background-color: rgb(0, 176, 240);\">请客劵是网站推送的拉动用户注册的一种优惠措施!</span><br/></p><h3><span style=\"font-size: 14px; background-color: rgb(0, 176, 240);\"><span style=\"font-size: 14px; background-color: rgb(255, 255, 255);\">请客劵有什么类型?</span><br/></span></h3><p><span style=\"font-size: 14px; background-color: rgb(0, 176, 240);\"><span style=\"font-size: 14px; background-color: rgb(255, 255, 255);\"><em>请客劵分为www.ifood517.com<span style=\"font-size: 14px; background-color: rgb(255, 255, 255); color: rgb(0, 112, 192);\">限非会员<span style=\"font-size: 14px; background-color: rgb(255, 255, 255); color: rgb(0, 0, 0);\"><span style=\"font-size: 14px; background-color: rgb(255, 255, 255); color: rgb(0, 112, 192);\">会员之分<span style=\"font-size: 14px; background-color: rgb(255, 255, 255); color: rgb(0, 0, 0);\"></span></span></span></span></em><br/></span></span></p>";  
  8.     [webView loadHTMLString:ring baseURL:[NSURL fileURLWithPath: [[NSBundle mainBundle] bundlePath]]];  
  9.     webView.delegate = self;  
  10. }  


webview 长按 会出现一些选择项 如何禁用长按

  1. - (void)webViewDidFinishLoad:(UIWebView *)webView {  
  2.   
  3.    // 禁用用户选择  
  4.    [webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.style.webkitUserSelect='none';"];  
  5.   
  6.    // 禁用长按弹出框  
  7.    [webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.style.webkitTouchCallout='none';"];  
  8. }  

____________________________________________  华丽丽的分割线  ____________________________________________


关于禁用长按webview后出现的功能项 最近有一个新的方法 

用手势替换  感觉也是不错的


  1. //添加手势 替换掉webView长按出现的功能选项  
  2.     UILongPressGestureRecognizer *longPress = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:nil];  
  3.     longPress.delegate = self;  
  4.     longPress.minimumPressDuration = 0.4; //个人测试感觉0.4秒是最合适的时间  
  5.     [webView addGestureRecognizer:longPress];  


webView下拉会出现阴影(iOS7.0以下系统)  怎么办呢?

cmd + UIWebView    看看关于UIWebView的API 

  1. @property(nonatomic,readonly,retain) UIScrollView *scrollView NS_AVAILABLE_IOS(5_0);  


webview上其实是一个scrollview

  1. [webView subviews] objectAtIndex:0];  //  这样就可以找到它了   



然后 想避免出现下拉阴影   方法之一就是禁掉 scrollview的回弹

[(UIScrollView *)[[webView_ subviews] objectAtIndex:0] setBounces:NO];

方法之二

  1. for (UIView *subView in [webView_ subviews]) {  
  2.        if ([subView isKindOfClass:[UIScrollView class]]) {  
  3.            for (UIView *shadowView in [subView subviews]) {  
  4.                if ([shadowView isKindOfClass:[UIImageView class]]) {  
  5.                    shadowView.hidden = YES;  
  6.                }  
  7.            }  
  8.        }  
  9.    }  


ok  下班!



阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

webview 透明

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭