当前位置:  开发笔记 > 编程语言 > 正文

UIWebView不会缩放内容以适应

如何解决《UIWebView不会缩放内容以适应》经验,为你挑选了5个好方法。

我有一个webview,它是层次结构中的顶层窗口,已声明如下所示.但是,它不会缩放页面以适应.尽管scalesPageToFit属性设置为YES,页面仍然是左上对齐,但未缩放.任何帮助将不胜感激.

webLookupView = [[UIWebView alloc] initWithFrame:CGRectMake(16, 63, 289, 327)];
webLookupView.backgroundColor = [UIColor lightGrayColor];
webLookupView.dataDetectorTypes = UIDataDetectorTypeAll;
webLookupView.scalesPageToFit = YES;

Confused Vor.. 36

iOS5提供了更好的解决方案

从webViewDidFinishLoad中调用它

- (void)zoomToFit
{ 
    if ([theWebView respondsToSelector:@selector(scrollView)])
    {
        UIScrollView *scrollView = [theWebView scrollView];

        float zoom = theWebView.bounds.size.width / scrollView.contentSize.width;
        scrollView.minimumZoomScale = zoom;
        [scrollView setZoomScale:zoom animated:YES];
    }
}

这很棒,但在它缩放后,它会弹回到之前的大小.有任何想法吗? (2认同)


RunLoop.. 29

我后来发现有些网页是正确缩放的,但有些则没有.对于未正确缩放的网页,可以使用javascript控制缩放,如下所示:

NSString *jsCommand = [NSString stringWithFormat:@"document.body.style.zoom = 1.5;"];
[webLookupView stringByEvaluatingJavaScriptFromString:jsCommand];


vualoaithu.. 22

您可以使用以下代码:

self.webView.scalesPageToFit = YES;
self.webView.contentMode = UIViewContentModeScaleAspectFit;

- (void)webViewDidFinishLoad:(UIWebView *)webView methodviewDidLoad



1> Confused Vor..:

iOS5提供了更好的解决方案

从webViewDidFinishLoad中调用它

- (void)zoomToFit
{ 
    if ([theWebView respondsToSelector:@selector(scrollView)])
    {
        UIScrollView *scrollView = [theWebView scrollView];

        float zoom = theWebView.bounds.size.width / scrollView.contentSize.width;
        scrollView.minimumZoomScale = zoom;
        [scrollView setZoomScale:zoom animated:YES];
    }
}


这很棒,但在它缩放后,它会弹回到之前的大小.有任何想法吗?

2> RunLoop..:

我后来发现有些网页是正确缩放的,但有些则没有.对于未正确缩放的网页,可以使用javascript控制缩放,如下所示:

NSString *jsCommand = [NSString stringWithFormat:@"document.body.style.zoom = 1.5;"];
[webLookupView stringByEvaluatingJavaScriptFromString:jsCommand];



3> vualoaithu..:

您可以使用以下代码:

self.webView.scalesPageToFit = YES;
self.webView.contentMode = UIViewContentModeScaleAspectFit;

- (void)webViewDidFinishLoad:(UIWebView *)webView methodviewDidLoad


或在Interface Builder :)

4> Mongus Pong..:

如果您有权访问正在加载的html,则可以在标题中删除以下元标记:

self.webView.scalesPageToFit = true
self.webView.contentMode = UIViewContentMode.ScaleAspectFit

推荐阅读
mobiledu2402851373
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有