我有一个 UITableView 持有UIWebView
可变高度的 s,并且用户可以编辑每个 web 视图的内容。每个单元格(Web 视图)的内容都链接到一个NSManagedObject
子类,该子类的内容高度存储为contentHeight
. 当最初创建一组新内容时,它会填充一组具有设定高度的默认数据,因此没有问题。
当用户编辑网页视图的内容时,我的问题就出现了;我需要弄清楚新内容的高度并相应地更新表格视图。我已经设置了更新contentHeight
相应对象的已保存变量的逻辑,但我找不到可靠的方法来确定新内容的高度。下面我列出了一些我尝试过但无法奏效的方法。任何帮助将不胜感激,我已经被难住了一个多小时了:(
失败的方法:
[[webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.scrollHeight"] floatValue];
[[webView stringByEvaluatingJavaScriptFromString:@"document.body.scrollHeight"] floatValue];
[[webView stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight"] floatValue];
[[webView stringByEvaluatingJavaScriptFromString:@"document.getElementById('sdcontent').offsetHeight"] floatValue];
CGRect webViewFrame = [webView frame];
CGRect temp = webViewFrame;
webViewFrame.size.height = 1;
[webView setFrame:webViewFrame];
CGSize fittingSize = [webView sizeThatFits:CGSizeZero];
webViewFrame.size = fittingSize;
[webView setFrame:temp];