J'ai une uiwebview qui charge les données à l'aide de la fonction loadHtmlString. Le problème est que je charge les données à partir d'une base de données sqlite, chaque fois que je charge une chaîne différente avec une longueur différente et naturellement la vue Web obtient une hauteur différente.
Maintenant, j'ai besoin de connaître à chaque fois la hauteur exacte de l'uiwebview afin de charger une imageView juste sous la webView. j'ai essayé
- (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);
}
mais j'obtiens toujours le même résultat. J'ai besoin de savoir comment obtenir dynamiquement la hauteur de la vue Web à chaque fois qu'elle est chargée. THX
Essaye ça
NSString *result = [webView stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight;"];
int height = [result integerValue];
dans votre méthode webViewDidFinishLoad.
Vous pouvez obtenir la hauteur du contenu dans une vue Web en accédant à la propriété scrollView
de la vue Web:
NSLog(@"%f",myWebView.scrollView.contentSize.height);