【问题标题】:scalesPageToFit not working properly running an iPhone app on iPad (iOS 7)scalesPageToFit 无法在 iPad (iOS 7) 上正常运行 iPhone 应用程序
【发布时间】:2013-10-01 12:23:48
【问题描述】:

UIWebview scalesPageToFit 在带有 iOS 7iPad 上运行 iPhone 应用程序时无法正常工作。

我在将请求加载到 WebView 之前设置了 scalesPageToFit = YES

页面加载后,检查 HTML 文档宽度为 769px,而 UIWebView 的滚动视图框架宽度为 320。滚动视图 zoomScale 为 1,尽管您希望它为 0.41... (320/769)。任何想法?

【问题讨论】:

    标签: iphone ipad uiwebview ios7 scale


    【解决方案1】:

    该问题现已在 iOS 7.0.3 中得到修复。但是,如果你不能去那里,请继续阅读。

    这似乎是 iOS7 中的一个缺陷。回顾一下,当您在 iOS7 iPad 或 iPad Mini 中运行仅使用 iOS7 SDK 编译的 iPhone 应用程序时,就会出现问题。临时解决方法是缩放 Web 视图的滚动视图。这会使文本看起来比您想要的要小,但是,到目前为止,这是我见过的最好的解决方案。

    - (void)webViewDidFinishLoad:(UIWebView *)webView {
        CGSize contentSize = webView.scrollView.contentSize;
        CGSize viewSize = self.view.bounds.size;
    
        float scale = viewSize.width / contentSize.width;
        if (scale < 0.9) {
            NSLog(@"Zoom out fix for web view: %f", scale);
    
            webView.scrollView.minimumZoomScale = scale;
            webView.scrollView.maximumZoomScale = scale;
            webView.scrollView.zoomScale = scale;
        }
    }
    

    【讨论】:

    • Remover,如果当前比例因子为 0.9 或更大,则基本上代码会避免任何缩放。如果需要,您也可以使用 scale
    【解决方案2】:

    我们有一个 ios-app 和一个 webapp 存在相同的集成问题。我们必须通过强制 320 css 在 webapp 中解决这个问题。我认为这是一个 ios7 错误,并希望对此进行修复。

    同样的问题:https://twitter.com/lukew/status/380702676121825280

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多