根据内容iphone设置webview的动态高度

时间:2010-07-21 09:18:54

标签: ios iphone cocoa-touch uiwebview uikit

我希望根据动态文本为webview设置动态高度。我试过了

       [my_webview sizeThatFits:CGSizeZero];

但它对我不起作用。我想动态设置webview高度。

提前完成。

2 个答案:

答案 0 :(得分:3)

请参阅my answer一个类似的问题。诀窍是在发送-sizeThatFits:之前将webView的框架设置为最小高度。

答案 1 :(得分:1)

按如下方式设置您的网络视图:

- (void)webViewSettings {
    NSString *htmlString = @"Your HTML String";
    NSString* descHtmlString = [NSString stringWithFormat: @"<html><meta name=\"viewport\" content=\"width=300, user-scalable=yes\" /><div style='width:300px' id='ContentDiv'><font face=\"Arial\" size=2.5 color='#702f70'>%@</font></div></html>", htmlString];
    descHtmlString = [descHtmlString stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];
    [self.webView loadHTMLString:descHtmlString baseURL:[NSURL URLWithString:@""]];
}

然后在您的接口文件中实现UIWebViewDelegate,并在实现文件中实现以下方法:

- (void)webViewDidFinishLoad:(UIWebView *)webView {
        NSString *contentHeight = [self.descriptionWeb stringByEvaluatingJavaScriptFromString:@"document.getElementById('ContentDiv').offsetHeight"];
        self.descriptionWeb.frame = CGRectMake(10,webView.frame.origin.y, 300, [contentHeight floatValue]);
}