iOS UIWebView с изменением размера содержимого

У меня есть UIWebView, для которого я установил высоту WebView на

[[webView stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight"] floatValue];

Это отлично работает, но на моей веб-странице у меня есть расширяемое меню, поэтому, когда веб-страница меняет высоту, WebView не увеличивает / не уменьшает ее размер.

Любые советы, как я могу заставить мой UIWebView изменять высоту динамически, когда веб-страница меняет свой размер?

Я бы очень хотел сохранить UIWebView size = webpage, чтобы мне никогда не приходилось прокручивать WebView.


person Jonas    schedule 25.11.2013    source источник


Ответы (3)


вы можете установить свойство sizeToFit и снова установить фрейм UIWebView в webViewDidFinishLoad

- (void)webViewDidFinishLoad:(UIWebView *)webView{
       [detailsWebView sizeToFit];
       [detailsWebView setFrame:CGRectMake(detailsWebView.frame.origin.x, detailsWebView.frame.origin.y, 300.0, detailsWebView.frame.size.height)];

}
person the1pawan    schedule 25.11.2013

Попробуйте установить contenSize его scrollview:

detailsWebView.scrollView.contentSize = CGSizeMake(detailsWebView.scrollView.contentSize.width,[[webView stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight"] floatValue]);
person thorb65    schedule 25.11.2013
comment
Где мне это делать? Высота меняется после webViewDidLoad - person Jonas; 25.11.2013

Используйте свойство UIWebView scalesPageToFit = YES;

person samir    schedule 25.11.2013
comment
Свойство scalePageToFit не изменит высоту WebView, которой я занимаюсь, в любом случае спасибо. - person Jonas; 25.11.2013