首页 > 代码库 > UIWebView添加手势VS设置背景色
UIWebView添加手势VS设置背景色
一.疑问??
最近在使用UIWebView,发现好多小问题,现整理如下:
1.使用xib加载UIWebView控件时可以设置BackGroundColor但是无效
2.使用纯代码设置self.webView.backgroundColor = [UIColor redColor];无效
3.代码可实现添加手势[self.webView addGestureRecognizer:tap];但点击无效
4.可以在webView上整体覆盖UIButton,但是button会使webView自带的滑动手势失效
二.解决方案
1.背景色设置
1)在@interface ViewController ()添加代理,@interface ViewController ()<UIWebViewDelegate>
2)给webView设置代理:self.webView.delegate = self;
3)实现代理方法:- (void)webViewDidFinishLoad:(UIWebView *)webView;
4)在代理方法中设置颜色,可自定义"字体大小","字体颜色"和"webView的背景色",代码如下:
//字体大小
[webView stringByEvaluatingJavaScriptFromString:@"document.getElementsByTagName(‘body‘)[0].style.webkitTextSizeAdjust= ‘330%‘"];
//字体颜色
[webView stringByEvaluatingJavaScriptFromString:@"document.getElementsByTagName(‘body‘)[0].style.webkitTextFillColor= ‘red‘"];
//页面背景色
[webView stringByEvaluatingJavaScriptFromString:@"document.getElementsByTagName(‘body‘)[0].style.background=‘#2E2E2E‘"];
2.手势添加方法
1)在@interface ViewController ()添加代理,@interface ViewController ()<UIGestureRecognizerDelegate>
2)给手势设置代理:tap.delegate = self;
3)实现代理方法:- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer{return YES;}
4)实现手势点击调用方法
UIWebView添加手势VS设置背景色