iOS-UIWebview比例缩放
你在使用UIWebview显示网页时。可能会注意到。UIWebView所支持的缩放倍率是非常有限的。而在Safari自己所支持的缩放系数比UIWebview要大得多。
本文解释了怎样加大UIWebView的缩放系数。
UIWebView类没有改动缩放系数的方法,我们仅仅能用HTML代码来做。
Meta标签能够设置viewport。而viewport就包括了初始化缩放系数的參数。
META标签例如以下所看到的:
能够使用的參数有:
minimum-scale:
同意缩放的最小倍数。默觉得0.25,同意值为0-10。
maximum-scale:
执行缩放的最大倍数。默认1.6,同意值为0-10。
initial-scale:
当web页被载入,还未被用户缩放之前默认的缩放系数。默认值是自己主动依据页面大小和可用区域计算出来的,但这个值终于会在最小倍数到最大倍数之间。
user-scalable
是否执行用户缩放该web页。
width:
viewpoint的宽。默觉得980像素(iPhone)。同意值为200-10000 。
”device-width”表示设备宽度(iPhone为320,iPad为768)。
注意device width不等于用户界面的宽度。设备宽度总是设备处于人像模式下的宽度(屏幕方向为正向)。假设我们想添加web页的最大缩放系数(默认1.6),我们仅仅须要在HTML代码中添加META标签。指定maximum-scale属性就可以。你能够直接在HTML源码中添加META标签。假设web页来自internet而且无法改动HTML源码,你能够用Javascript代码创建META标签并附加到web页的HTML代码中。读完剩下的内容。你就知道怎么做了。
height:
viewport的高。一般是依据width计算的。
JavaScript代码例如以下:
IncreaseZoomFactor.js:
function increaseMaxZoomFactor() {
var element = document.createElement(‘meta’);
element.name = “viewport”;
element.content = “maximum-scale=10”;
var head = document.getElementsByTagName(‘head’)[0];
head.appendChild(element);
}
在webViewDidFinishLoad:托付方法中,你能够把这段JS代码加到web页中:
-(void)webViewDidFinishLoad:(UIWebView *)webView {
NSString *path = [[NSBundle mainBundle]pathForResource:@”IncreaseZoomFactor” ofType:@”js”];
NSString *jsCode = [NSStringstringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
[webViewstringByEvaluatingJavaScriptFromString:jsCode];
[webView stringByEvaluatingJavaScriptFromString:@”increaseMaxZoomFactor()”];
}
当从web载入web页时。你须要小心,由于很多web页已经使用META标签去改变了缩放系数或其它的viewport參数。假设你添加了新的META标签,你会覆盖这些缩放系数以及其它未參数。也就是说,假设在多个META标签中定义同一參数。那么最后一个定义生效。
大部分时候这不会产生什么问题,但某些时候例外。
比如,假设web页定义了初始缩放系数4,由于web页未定义maximum-scale參数,那么默认值1.6将限制初始缩放系数仅仅能是1.6。如今,你加大了maximum-scale,initialzoom也会加大。由于原来的maximum-scale參数不能再限制它了。这会带来一个严重的后果,你须要检查其它參数并依据它们的值进行又一次定义(比如,你须要将initial-scale定义为1.6以防止maximum-scale将页面缩放得过多)。
iOS-UIWebview比例缩放的更多相关文章
- iOS 图片比例缩放
方法 //Resize image - (UIImage *)resizeImage:(UIImage *)image withQuality:(CGInterpolationQuality)qual ...
- ios 图片处理( 1.按比例缩放 2.指定宽度按比例缩放
本文转载至 http://blog.sina.com.cn/s/blog_6f29e81f0101tat6.html //按比例缩放,size 是你要把图显示到 多大区域 CGSizeMake(300 ...
- ios UIWebView截获html并修改便签内容(转载)
ios UIWebView截获html并修改便签内容 博客分类: iphone开发iphone开发phoneGap uiwebviewstringByEvaluatingJavaScriptFromS ...
- IOS UIWebView截获html并修改便签内容,宽度自适应
需求:混合应用UIWebView打开html后,UIWebView有左右滚动条,要去掉左右滚动效果: 方法:通过js截获UIWebView中的html,然后修改html标签内容: 实例代码: 服 ...
- ios UIWebView截获html并修改便签内容
需求:混合应用UIWebView打开html后,UIWebView有左右滚动条,要去掉左右滚动效果: 方法:通过js截获UIWebView中的html,然后修改html标签内容: 实例代码: 服务器端 ...
- C#图片按比例缩放
C#图片按比例缩放: // 按比例缩放图片 public Image ZoomPicture(Image SourceImage, int TargetWidth, int TargetHeight) ...
- html img图片等比例缩放
在img标签里面只设置宽,不设置高,图片就会等比例缩放.
- Java控制图片按比例缩放- (注意内存释放)
package mytiny.com.common; import java.awt.Color;import java.awt.Graphics2D;import java.awt.Image;im ...
- 理解CSS3中的background-size(对响应性图片等比例缩放)
理解CSS3中的background-size(对响应性图片等比例缩放) 阅读目录 background-size的基本属性 给图片设置固定的宽度和高度的 固定宽度400px和高度200px-使用ba ...
- jQuery实现等比例缩放大图片
在布局页面时,有时会遇到大图片将页面容器“撑破”的情况,尤其是加载外链图片(通常是通过采集的外站的图片).那么本文将为您讲述使用jQuery如何按比例缩放大图片,让大图片自适应页面布局. 通常我们 ...
随机推荐
- jQuery五屏轮播手风琴切换代码
jQuery五屏轮播手风琴切换代码 在线演示本地下载
- 8、scala面向对象编程之对象
1. Object 2.伴生对象 3.让object继承抽象类 4.apply方法 5.main方法 6.用object实现枚举功能 1. Object Object,相当于class的单个实例, ...
- JS中for循环多个变量的判断原理
看完下面两个例子的比较就明白了,其实就是逗号表达式,总是依据最后一个表达式的值. for(i=0, j=0; i<10, j<6; i++, j++){ k = i + j; consol ...
- JAVA趣味逻辑算法
/**已知4位同学中的一位数学考了100分,当小李询问这4位是谁考了100分时,4个人的回答如下: A说:不是我. B说:是C C说:是D. D说:他胡说. 已知三个人说的是真话,一个人说的是假话.现 ...
- url中含有中文路径时访问出现404问题
/** * URL中文字符编码转换 * @param url 含中文字符的URL * @return */ public static String getChineseURICode(String ...
- Sybase_ASA 字符串拼接
列转行并拼接字符串,使用LIST函数 SELECT LIST(T.NAME,',') FROM TAB_DEMO T;
- CAD实现自定义实体夹点移动(com接口VB语言)
主要用到函数说明: MxDrawXCustomEvent::MxDrawXCustomEntity::moveGripPointsAt 自定义实体事件,自定义实体夹点被移动,详细说明如下: 参数 说明 ...
- Eclipse安装和使用TFS
第一步下载Tfs插件 去微软官网下载https://www.microsoft.com/en-us/download/details.aspx?id=4240 点击 选择下载 随便放置到一个本地或者服 ...
- Python学习【第4篇】:Python之文件操作
文件操作 读取一行 f=open("D:\\1.txt",'rb') print f.readline() f.close() 将文件内容保存在一个list with open(& ...
- (ccf)201709-4 通信网络
#include<iostream> #include<memory.h> #include<stack> #include<string> #incl ...