以编程方式调整/调整动态html以适应UIWebView

要求是将HTML嵌入到具有固定大小(即预定义宽度x高度组合)的UIWebView中,这些大小可由开发人员指定。 关于HTML,它包含进一步加载其他具有动态元素的html的脚本,由于动态html基本上是富媒体广告(广告),因此在运行时不知道其性质。 我在SO上发布的几个类似问题的100个解决方案中尝试过:

  • 将元视口宽度和高度更改为网页视图的宽度和高度(https://developers.google.com/webmasters/mobile-sites/mobile-seo/responsive-design && http://webdesignerwall.com/tutorials/viewport-meta -tag换不响应的设计)
  • 通过脚本标记(http:// codetheory。)将canvas&div元素width / max-width&height / max-height的CSS更新为webview的CSS更新(基于测试显示这些元素是构成HTML的主要元素)。在/ scaling-your-html5-canvas-to-fit-different-viewports-or-resolutions /中,HTML内容适合UIWebview而不缩小)
  • Javascript注入来更新canvas&div元素。
  • 问题:无论上述3个更改一起应用,或作为组合无法在webview中正确呈现HTML。 元素溢出或缩小,结果显示从不“正确”。 这使我相信这完全是不可能的,因为

  • HTML元素的布局不能单独控制它们的大小,因为它们一起工作并且不正确地改变它们不被建议
  • 最初的HTML可以使用非div和canvas之类的元素加载任何其他HTML。
  • 应用上述方法将导致html被扭曲,因为所有div和canvas都将以相同方式处理,而不管它们的宽度和高度
  • 我没有发布上面尝试的方法的实际代码,因为没有工作,我认为他们不会迎合动态HTML(s)。 我现在处于死胡同,希望有人能证实我的信仰并验证他们,或者指点我一个解决方案。 如果说这样的解决方案在应用程序级别(在UIWebView中)是不可能的,那么也许我可以说服html提供商提供基于大小的HTML。 任何帮助表示赞赏。


    - (void)webViewDidFinishLoad:(UIWebView *)webView {
            CGRect newBounds = webView.bounds;
            newBounds.size.height = webView.scrollView.contentSize.height;
            webView.bounds = newBounds;
    }
    

    (新泽西州)

    链接地址: http://www.djcxy.com/p/77425.html

    上一篇: Programmatically resize / adjust dynamic html to fit UIWebView

    下一篇: I cannot get the UIScrollView to adjust its size based on UIWebView