2013-03-24 4 views
1

У меня есть один webView, в котором я показываю html-текст. Я подсчитываю высоту webView, как показано ниже.Проблема с динамической высотой webView

int height = [[_webViewDesc stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight;"] integerValue]; 

Фактический размер тела WebView отличается от того, что я получаю. Как получить фактическую высоту для webView.

+0

где вы добавляете этот метод, чтобы получить высоту? – Ankur

+0

while allocationg webView. – Nirav

ответ

3

Чтобы получить высоту, ваш веб-просмотр должен быть сначала загружен с помощью строки html. Дайте делегатом свойство вашего объекта WebView и попытаться получить высоту в поле ниже функции

- (void)webViewDidFinishLoad:(UIWebView *)webView { 
    int height = [[_webViewDesc stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight;"] integerValue]; 
    NSLog(@"%d",height); 
} 

вы также можете использовать ниже метод, чтобы получить высоту WebView

NSLog(@"%f",_webViewDesc.scrollView.contentSize.height); 
+0

Для этого мне нужно перезагрузить все компоненты после этого веб-просмотра. Смотрите, у меня есть один вид с помощью imageView, webView, Buttons. поэтому, если я изменяю высоту webView отсюда, тогда мне нужно перезагрузить все кнопки после webView. – Nirav

+0

@Nirav - нет другого способа получить высоту содержимого веб-просмотра, вам нужно сначала загрузить его. – Ankur

Смежные вопросы