UIWebView的缩放范围非常有限

时间:2011-08-13 05:36:45

标签: iphone ios uiwebview zoom

我有一个测试UIWebView。我在其中加载了少量自定义HTML。没有什么特别的 - 两页,一个小文本和一个页面上的小图像。我正在用它来测试课程。

我遇到的一个问题是我放大和缩小的能力非常有限。看来即使我设置了UIWebView的UIScrollView的minimumZoomScale和maximumZoomScale属性,也会将它们重置为1.5或更小的比例。如果我经常尝试设置它们,应用程序会非常不满意并且容易崩溃。

有人可以解释发生了什么吗?

2 个答案:

答案 0 :(得分:4)

您需要将以下行放在HTML文档的head部分。

<meta name="viewport" content="user-scalable=yes,maximum-scale=5.0,minimum-scale=0.25" />

关于此问题的文档:http://developer.apple.com/library/safari/#documentation/appleapplications/reference/SafariHTMLRef/Articles/MetaTags.html

答案 1 :(得分:0)

我知道这个JavaScript代码。但我不知道如何实现这个标签。花了一些时间后,我得到了解决方案 试试下面的代码。根据您的要求更改minimum-scalemaximum-scale

    - (void)webViewDidFinishLoad:(UIWebView *)webView {
    NSString* js =
    @"var meta = document.createElement('meta'); " \
    "meta.setAttribute( 'name', 'viewport' ); " \
    "meta.setAttribute( 'content', 'width = device-width, initial-scale = 1.0,minimum-scale=1.0,maximum-scale=10.0 user-scalable = yes' ); " \
    "document.getElementsByTagName('head')[0].appendChild(meta)";
    [webView stringByEvaluatingJavaScriptFromString: js];
}