LoadHtmlString関数を使用してデータをロードするuiwebviewがあります。事は、長さの異なる文字列をロードするたびに、sqliteデータベースからデータをロードしていることです。当然、Webビューは異なる高さを取得します。
今度は、webViewのすぐ下でimageViewをロードするために、uiwebviewの正確な高さを知る必要があります。私が試してみました
- (void)webViewDidFinishLoad:(UIWebView *)aWebView {
CGRect frame = aWebView.frame;
frame.size.height = 1;
aWebView.frame = frame;
CGSize fittingSize = [aWebView sizeThatFits:CGSizeZero];
frame.size = fittingSize;
aWebView.frame = frame;
NSLog(@"Size: %f, %f", fittingSize.width, fittingSize.height);
}
しかし、私はいつも同じ結果を得ます。ロードされるたびにWebビューの高さを動的に取得する方法を知る必要があります。 THX
これを試して
NSString *result = [webView stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight;"];
int height = [result integerValue];
webViewDidFinishLoadメソッドで。
WebビューのscrollView
プロパティにアクセスして、Webビューのコンテンツの高さを取得できます。
NSLog(@"%f",myWebView.scrollView.contentSize.height);