iPad - найдите истинную высоту UIWebView - PullRequest
1 голос
/ 09 ноября 2010

Я работаю в медиа-компании, и в нашем приложении для iPad мы обновляем наш контент, чтобы он выглядел лучше.Ранее мы использовали UILabel для отображения содержимого наших сообщений.Я использовал это, чтобы получить фактическую высоту моей UILabel:

CGSize expectedSize = [label.text sizeWithFont:label.font
    constrainedToSize:maximumLabelSize lineBreakMode:label.lineBreakMode];

Однако мы изменили содержимое наших сообщений на HTML, поэтому я использую UIWebView.Есть ли способ найти истинную высоту UIWebView, как я делаю с UILabel?

1 Ответ

4 голосов
/ 09 ноября 2010

В отличие от простой строки, вы, вероятно, сможете получить высоту только после того, как веб-представление завершит рендеринг.Вот как вы можете сделать это в методе делегирования веб-представления:

- (void)webViewDidFinishLoad:(UIWebView *)webview
{
    NSString *heightString = [webview stringByEvaluatingJavaScriptFromString:
                              @"document.body.clientHeight"];
    int height = [heightString intValue];
    ...
}
...