iOS-UIWebView加载html,文字大小颜色设置,图片自适应设置
来源:互联网 发布:c语言float是什么意思 编辑:程序博客网 时间:2024/06/06 06:44
UIWebView加载html,遇到了文字大小、颜色不符合要求的问题,而且图片也不能设置宽高。
经过多次尝试(UITextView代替尝试),终于有了解决方案:修改html源码,在其中加入font-size等的设置。
代码如下:代码思路是,把源代码中的所有font-size设置都删掉,然后把原html放在一个body里,再整体设置body的font-size等属性
//修改answer中的字号/边距/颜色,设置图片大小适应屏幕 NSString *answer = 你的html代码; NSRange range = [answer rangeOfString:@"font-size:"]; if (range.location == NSNotFound) { NSLog(@"can not change fontsize!"); } else { NSArray*sourcearray = [answer componentsSeparatedByString:@"font-size:"]; NSMutableArray *bigArray = [NSMutableArray arrayWithArray:sourcearray]; for (int i=1; i<bigArray.count; i++) { NSArray *minArray = [bigArray[i] componentsSeparatedByString:@"px"]; if (minArray.count < 2) { minArray = [bigArray[i] componentsSeparatedByString:@"pt"]; } if (minArray.count < 2) { minArray = [bigArray[i] componentsSeparatedByString:@"em"]; } bigArray[i] = minArray[1]; } answer = @""; for (NSString *subStr in bigArray) { answer = [answer stringByAppendingString:subStr]; } } //设置字体大小为14,颜色为0x666666,边距为18,并且图片的宽度自动充满屏幕,高度自适应 NSString *htmls = [NSString stringWithFormat:@"<html> \n" "<head> \n" "<style type=\"text/css\"> \n" "body {margin:18;font-size:14;color:0x666666}\n" "</style> \n" "</head> \n" "<body>" "<script type='text/javascript'>" "window.onload = function(){\n" "var $img = document.getElementsByTagName('img');\n" "for(var p in $img){\n" " $img[p].style.width = '100%%';\n" "$img[p].style.height ='auto'\n" "}\n" "}" "</script>%@" "</body>" "</html>",answer]; self.htmlWebView.scalesPageToFit=YES; [self.htmlWebView loadHTMLString:htmls baseURL:nil];
这样之后,就需要动态计算出UIWebView的高度,在webView的delegate里,计算高度,代码如下:- (void)webViewDidFinishLoad:(UIWebView *)theWebView{ CGFloat scrollHeight = [[theWebView stringByEvaluatingJavaScriptFromString:@"document.body.scrollHeight"] floatValue]; [self.htmlWebView mas_updateConstraints:^(MASConstraintMaker *make) { make.height.equalTo(@(scrollHeight)); }];}
即在加载完成之后,再计算真实高度。
0 0
- iOS-UIWebView加载html,文字大小颜色设置,图片自适应设置
- ios webview 如何加载html文字设置文字大小
- UIWebView加载html图片自适应高度
- QLabel设置文字大小和颜色
- QLabel设置文字大小和颜色
- QLabel设置文字大小和颜色
- QLabel设置文字大小和颜色
- iOS 设置Label中特定的文字大小和颜色
- iOS UIWebView 设置背景颜色透明
- UIWebView背景颜色的设置 webview加载html文本 禁用webview长按
- iOS-UIWebView 自适应网页图片
- iOS-UIWebview设置超时、加载失败、重新加载等问题解决
- iOS 设置UIWebView 展示字体大小,颜色,展示布局
- UIWebView设置字体大小,颜色,字体
- UIWebView 加载html 及自适应高度
- iOS开发:字符串设置指定内容的文字颜色、文字大小、文字字体类型
- HTML:设置背景颜色和图片
- UIWebView加载本地html ios
- PS学习小结(2)
- Mac环境下安装Hadoop伪分布模式
- sql语句优化之一:尽量使用索引避免全表扫描
- ConcurrentHashMap的实现原理
- node.js初识-千里之行始于足下
- iOS-UIWebView加载html,文字大小颜色设置,图片自适应设置
- 解决两个虚拟机网络适配器都为NAT模式,其中一台无法上网的情况
- 移动端弹出层上禁止页面滚动
- 用python写个小爬虫
- CKEditor 上传图片到 WebBroker 做的 Web 服务器
- 图像特征检测(Image Feature Detection)
- CSS和HTML中的块元素和内联元素的区别,特点和关系
- win7 打开共享目录提示 —— 登陆失败:未知的用户名或密码错误解决办法
- 计算机视觉之统计形状模型——Active Shape Model