2

我在 UIscrollview 中有一个 UIwebview。我已将 View 控制器的大小设置为自由允许滚动视图。

我在情节提要中给出了scrollview = 1000 和webview = 200 的高度。现在,在代码中,我正在根据收到的内容调整 webview 的高度。

-(void)webViewDidFinishLoad:(UIWebView *)webView
{
    CGRect frame = webView.frame;
    frame.size.height = 1;
    webView.frame = frame;
    CGSize fittingSize = [webView sizeThatFits:CGSizeZero];
    frame.size = fittingSize;
    webView.frame = frame;

    NSLog(@"size: %f, %f", fittingSize.width, fittingSize.height);
    webView.scrollView.scrollEnabled = NO;
}

日志状态size: 280.000000, 676.000000

但是在滚动 webview 后会自动调整到情节提要中给定的大小。我需要禁用某些东西/或者我错过了什么吗?

4

2 回答 2

0

这样做

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

    CGRect frame = webView.frame;
    frame.size.height = [[your_webview stringByEvaluatingJavaScriptFromString:@"document.documentElement.scrollHeight;"] floatValue];
    webView.frame = frame;
}

希望对你有帮助......

于 2013-06-07T10:11:39.627 回答
0

尝试将代码写入

webViewDidStartLoad:

还要检查你在哪里实现了滚动的代码,看看你是否在滚动动作期间设置了 web 视图框架或大小,如果你已经实现了。

于 2013-06-07T09:08:52.167 回答