如何允许缩放UIWebView(尝试一切)

我已经尝试了每一个代码,我已经发现尝试,使这一页放大和缩小,但无论如何,文本仍然重叠屏幕和UIWebView中的页面将无法适应屏幕。

我在这里试过说明: http : //www.iphonedevsdk.com/forum/iphone-sdk-development/9112-uiwebview-zoom-pinch.html

我试着添加: webView.scalesPageToFit = TRUE;

我已经将其设置为UserInteractionEnabled

但似乎没有任何工作。

这是与网页的编码或与UIWebView?

谢谢,

詹姆士

  1. 首先。 参考UIWebView类的引用,你需要设置scalesPageToFit。

    苹果说:scalesPageToFit如果是的话,网页被缩放到适合和用户可以放大和缩小。 如果否,则禁用用户缩放。 默认值是NO。

  2. 如果你查看页面的源代码,你应该能够find// meta name =“viewport”content =“width = device-width; initial-scale = 1.0; maximum-scale = 1.0;”// //。

    为了向您展示缩放效果。 我想用它replace它:// meta name =“viewport”content =“width = device-width; initial-scale = 1.0; maximum-scale = 5.0; user-scalable = 1;”// //。

  3. 为UIWebview的方法stringByEvaluatingJavaScriptFromString运行以下JavaScript: – (void)webViewDidFinishLoad:(UIWebView *)webView {}

     function setScale(){ var all_metas=document.getElementsByTagName('meta'); if (all_metas){ var k; for (k=0; k<all_metas.length;k++){ var meta_tag=all_metas[k]; var viewport= meta_tag.getAttribute('name'); if (viewport&& viewport=='viewport'){ meta_tag.setAttribute('content',"width=device-width; initial-scale=1.0; maximum-scale=5.0; user-scalable=1;"); } } } } 

我看了你在评论中提供的链接的页面源代码,发现这个:

 <meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0;"> 

这就是“locking”视窗,不允许缩放。

你会发现一些很好的信息,这里更好地解释标签:

https://developer.mozilla.org/en/mobile/viewport_meta_tag

一些网页是手机网站,大小固定。 例如,您使用iPhone Safari浏览器打开Goog​​le的主页

我已经试过你的链接(dhsb.org/index.phtml?d=190350)在我的i4上的Safari中打开,正如你所描述的(文本与屏幕重叠,缩放closures)。 所以问题出在网站上,而不是在你的代码中。