【问题标题】:UIWebview default zoom levelUIWebview 默认缩放级别
【发布时间】:2011-10-15 22:13:58
【问题描述】:
在我的应用程序中,我使用 UIWebviews 显示一些单页 PDF,我注意到在 iOS5 中默认缩放级别是显示整个文档,而在 4.3 中打开文档时放大了。
是否可以通过编程方式设置 UIWebview 的缩放级别?
*我也尝试过 QLPreviewController 并注意到同样的默认缩小行为
【问题讨论】:
标签:
objective-c
uiwebview
zooming
ios5
qlpreviewcontroller
【解决方案1】:
在设置 zoomScale 时遇到了同样的问题,并且在 webView 中没有可见的响应。
我的错误是尝试 webViewDidFinishLoad: 中的设置。
解决方法是使用viewDidAppear:
-(void)viewDidAppear:(BOOL)animated{
[self.webView.scrollView setZoomScale:1.5 animated:YES];
}
【解决方案2】:
我最终通过循环浏览 webviews 子视图并缩放滚动视图到达那里:
for (UIView *subView in [self.view subviews]) {
if ([subView isKindOfClass:[UIScrollView class]]) {
UIScrollView *scrollView = (UIScrollView *)subView;
[scrollView setZoomScale:2.5f animated:YES];
}
}
重要的是要注意,在尝试缩放之前,您需要等待 webview 在屏幕上呈现,这让我很困惑;-\
【解决方案3】:
你可以使用
webView.scalesPageToFit = NO
[webView stringByEvaluatingJavaScriptFromString:@"document. body.style.zoom = 5.0;"];