UIWebView加载外部网站时,以编程方式设置初始缩放比例?

我想要做的是为外部网站设置初始缩放比例[以及在某些情况下,内容偏移量,但不那么重要]。 但是,在应用程序最初设置缩放和偏移后,用户应该能够改变它们,而应用程序不应该干扰。

一些相关的信息可以在这里 , 这里和这里 。 但据我所知,没有什么我想要的。

元设置方法看起来很有前途 – 但是如果我不控制将被加载的html内容,我将如何设置它?

试试这个设置初始缩放级别 –

[webView stringByEvaluatingJavaScriptFromString:@"document. body.style.zoom = 5.0;"]; 

也不要忘记将scalesPageToFit设置为NO,你就完成了。

如果将其设置为YES,则会缩放网页以适合用户放大和缩小。 如果否,则禁用用户缩放。 默认值是NO。

为什么不:

  [self.webView.scrollView setZoomScale:2.0 animated:YES]; 

如果您想为您的网页视图设置初始缩放,然后您的网页视图可以缩放。 您可以尝试在webViewDidFinishLoad协议方法中将元标记添加到HTMLstring的头标记中。 您可以更改“初始规模”,“最小规模”和“最大规模”以适应您的要求。 看起来像这样:

 - (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]; } 

最好的一个发现尝试添加meta标签在你的html页面,在你的标签。它得到了眨眼修复。 尝试苹果链接,并select适合你的meta标签。

如果你在加载html和javascriptin uiwebview,那么在视口中设置user-scalable = 1.0。