【问题标题】:UIWebView won't resize to fit content?UIWebView 不会调整大小以适应内容?
【发布时间】:2011-08-12 08:42:48
【问题描述】:

我的 webView 在完成加载后没有正确调整大小。这段代码我试过了。

- (void)webViewDidFinishLoad:(UIWebView *)webview {
    CGRect frame = webView.frame;
    frame.size.height = 1;
    frame.size.width = screenWidth;
    webView.frame = frame;
    CGSize fittingSize = [webView sizeThatFits:CGSizeZero];
    frame.size = fittingSize;
    webView.frame = frame;
    [bodyScroll setContentSize:CGSizeMake(screenWidth, webView.frame.origin.y + webView.frame.size.height+keyboardRectY+60)];

它增加了屏幕宽度之外的宽度,因此我的内容水平扩展超出了我不想要的视图大小。

改变

CGSize fittingSize = [webView sizeThatFits:CGSizeMake(screenWidht, 1)];

也会导致同样的情况。

我怎样才能摆脱这个? webview 的宽度应始终保持为 screenwidth,只有它的高度应根据内容大小进行调整,以便 webView 几乎适合整个内容。

提前致谢

【问题讨论】:

  • 看看这个SO post Search SO for autoresizingmask UIWebView

标签: iphone uiweb


【解决方案1】:

在设置frame 的大小时,您将覆盖之前设置的宽度。这应该是:

...
CGSize fittingSize = [webView sizeThatFits:CGSizeZero];
fittingSize.width = screenWidth; // Add this
frame.size = fittingSize
...

【讨论】:

  • 这会将框架设置好,但我的文本仍然没有换行到 screenWidth,而是水平扩展超出了 screenWidth。为什么?
  • 我也有同样的问题。为什么在这个答案确实不是正确答案的情况下选择这个答案作为正确答案?
猜你喜欢
  • 2011-08-20
  • 1970-01-01
  • 1970-01-01
  • 2012-01-08
  • 2023-03-05
  • 2020-10-09
  • 2011-02-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多