UIWebView - Автоизмените размер так, чтобы никакая прокрутка (в самом webView) не была необходима

Я пытаюсь использовать a UIWebView для отображения содержания выше, чем экран iPhone, не будучи должен прокрутить в UIWebView самостоятельно.

UIWebView помещается как подпредставление в a UIScrollView, наряду с некоторыми другими объектами, которые я хочу UIScrollView прокручивать вверх и вниз с UIWebView.

Я знаю, что можно сделать это с a UITextView как это:

CGRect frame = _textView.frame; frame.size.height = _textView.contentSize.height; _textView.frame = frame;

Но UIWebView не наследовался UIScrollView и поэтому не содержит contentSize- свойство.

Я действительно хотел бы сохранить это a UIWebView, потому что данные, которые я получаю, находятся в блоках HTML.

Спасибо!

9
задан Emil 18 January 2013 в 10:22
поделиться

1 ответ

Я думаю, единственный способ сделать это - использовать javascript для получения размера веб-страницы и изменения размера элемента управления UIWebView.

Что-то вроде следующего должно сработать

int content_height = [[theWebView stringByEvaluatingJavaScriptFromString: @"document.body.offsetHeight"] integerValue];
CGRect rect = theWebView.frame;
rect.size.height = content_height;
theWebView.frame = rect;

Возможно, вам понадобится добавить какой-то коэффициент к высоте контента.

7
ответ дан 4 December 2019 в 10:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: